java下载文件无法正常工作,文件大小超过8K?

时间:2014-09-23 18:20:36

标签: java

我尝试使用以下代码从url下载pdf文件。当文件大小低于8k时它工作正常,如果文件高达8k,它会下载pdf文件,但文件不可读。

代码

 InputStream in = new BufferedInputStream(url.openStream());
                 ByteArrayOutputStream out = new ByteArrayOutputStream();
                 byte[] buf = new byte[1024];
                 int n = 0;
                 while (-1!=(n=in.read(buf)))
                 {
                    out.write(buf, 0, n);
                 }
                 out.close();
                 in.close();
                 byte[] response = out.toByteArray();

                 FileOutputStream fos = new FileOutputStream(new File("C:\\temp\\TEST.pdf"));
                 fos.write(response);
                 fos.close();
                 System.out.println("Download Finished");

1 个答案:

答案 0 :(得分:0)

您可以尝试使用 IOUtils.copy(InputStream输入,OutputStream输出) 您可以最小化代码行。 Apache IOUtils