noodles83
08-06-2010, 18:00
salve a tutti,
ho bisogno di capire quale sia il modo più veloce per scrivere un inpustream in un array di byte. L'inputstream è il risultato di una connessione internet. Devo prenderlo e convertirlo in un array di byte, non so a priori quanto sarà lungo.
io ho fatto così, è corretto? c'è un modo migliore per farlo?
HttpClient hc = new DefaultHttpClient();
HttpGet hg = new HttpGet(url);
HttpResponse response = hc.execute(hg);
InputStream in = response.getEntity().getContent();
ByteArrayOutputStream bao = new ByteArrayOutputStream();
int c;
while((c = in.read()) != -1)
bao.write(c);
byte[] temp = bao.toByteArray();
bao.reset();
bao.close();
....poi utilizzo temp....
ho bisogno di capire quale sia il modo più veloce per scrivere un inpustream in un array di byte. L'inputstream è il risultato di una connessione internet. Devo prenderlo e convertirlo in un array di byte, non so a priori quanto sarà lungo.
io ho fatto così, è corretto? c'è un modo migliore per farlo?
HttpClient hc = new DefaultHttpClient();
HttpGet hg = new HttpGet(url);
HttpResponse response = hc.execute(hg);
InputStream in = response.getEntity().getContent();
ByteArrayOutputStream bao = new ByteArrayOutputStream();
int c;
while((c = in.read()) != -1)
bao.write(c);
byte[] temp = bao.toByteArray();
bao.reset();
bao.close();
....poi utilizzo temp....