Re: Downloading a file in Linux
Grzesiek wrote:
I read one byte at a time because i download a JAR FILE not an image.
No corrupted bytes are allowed here. In fact i tried reading into
byte[1024] and byte[4096] but then downloaded file is 140kB and 160kB
instead of 116kB- which is the size of the file i want to downlaod. To
large file is corrupted and cannot be run.
You can get any file by reading with large buffers - it only
affects performance not functionality.
Code snippet:
URL url = new URL(urlstr);
HttpURLConnection con =
(HttpURLConnection)url.openConnection();
con.connect();
if(con.getResponseCode() == HttpURLConnection.HTTP_OK) {
InputStream is = con.getInputStream();
OutputStream os = new FileOutputStream(fnm);
byte[] b = new byte[100000];
int n;
while((n = is.read(b)) >= 0) {
os.write(b,0,n);
}
os.close();
is.close();
}
con.disconnect();
Arne