资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

java代码下载大文件 java实现下载文件

Java 批量大文件上传下载如何实现?

解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等。

临潼网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。成都创新互联公司2013年至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

1)开发一个web插件。用于上传文件。

2)开发一个FTP工具,不用web上传。

3)用现有的FTP工具。

下面是几款不错的插件,你可以试试:

1)Jquery的uploadify插件。具体使用。你可以看帮助文档。

resin服务器下用java下载pdf文件,下载下来的文件比源文件大了一倍多,不能打开。

这个似乎真有问题,把循环读取和写出是不是要改成这样更好一些

while ((read = input.read(buffBytes,0,1024)) != -1) {

allLength += read;

os.write(buffBytes, 0, read);

}

java文件下载超过4G文件错误

JVM可以调到那么大?

如果和JAVA环境相关,那就和代码无关了。(估计上面这个小文件下载没问题吧)

记得JVM只能达到物理内存的1/4?

我写了个下载程序,用Java写的,但是写完以后发现下载大文件的时候报错,内存溢出,能看看是哪的问题么?

不能一次读取完,大文件很容易内存溢出。参考下:

public static void download(String path, HttpServletResponse response) throws Exception {   

try {   

File file = new File(path);   

if (file.exists()) {   

String filename = file.getName();   

InputStream fis = new BufferedInputStream(new FileInputStream( file));   

response.reset();   

response.setContentType("application/x-download");

response.addHeader("Content-Disposition","attachment;filename="+ new String(filename.getBytes(),"iso-8859-1"));

response.addHeader("Content-Length", "" + file.length());   

OutputStream toClient = new BufferedOutputStream(response.getOutputStream());   

response.setContentType("application/octet-stream");   

byte[] buffer = new byte[1024 * 1024 * 4];   

int i = -1;   

while ((i = fis.read(buffer)) != -1) {   

toClient.write(buffer, 0, i);  

}   

fis.close();   

toClient.flush();   

toClient.close();   

try {

response.wait();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}  

} else {   

PrintWriter out = response.getWriter();   

out.print("script");   

out.print("alert(\"not find the file\")");   

out.print("/script");   

}   

} catch (IOException ex) {   

PrintWriter out = response.getWriter();   

out.print("script");   

out.print("alert(\"not find the file\")");   

out.print("/script");   

}   

}


分享标题:java代码下载大文件 java实现下载文件
文章来源:http://cdkjz.cn/article/doeoihh.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220