struts下载文档[解决方案]

简介:

   沫沫金在解决生成文档的最后,需要实现客户端下载功能。就好好写了一个完善的方法,贡献给大家。

特点:

-中文支持

-全文当支持*.rar,*.zip,*.txt,*.doc

-拷贝后直接使用

提示:

URLEncoder使用Jar包


 
 
  1. import java.net.URLEncoder 


解决方案:


 
 
  1. //这么调用sunvinsDown(root+"/",strFileName,response);就好  
  2. public static void sunvinsDown(String filePath,String fileName,HttpServletResponse response)  
  3. throws Exception {  
  4. File file = new File(filePath+fileName);  
  5. if(!file.exists()){  
  6. System.out.println("文件不存在");  
  7. }else{  
  8. FileInputStream fis = new FileInputStream(file);  
  9. BufferedInputStream bis = new BufferedInputStream(fis);  
  10.  
  11. OutputStream os=response.getOutputStream();  
  12. BufferedOutputStream bos=new BufferedOutputStream(os);  
  13.  
  14. fileName=URLEncoder.encode(fileName,"UTF-8");  
  15. fileName=new String(fileName.getBytes("UTF-8"),"GBK");  
  16.  
  17. response.reset(); 
  18. response.setContentType("UTF-8");  
  19. response.setContentType("Application/x-msdownload");  
  20. response.setHeader("Content-Disposition", "attachment;filename="+fileName);  
  21. response.setHeader("Content-Length", String.valueOf(bis.available()));  
  22.  
  23. int bytesRead=0;  
  24. byte[] buffer=new byte[1024];  
  25. while((bytesRead=bis.read(buffer))!=-1){  
  26. bos.write(buffer,0,bytesRead);  
  27. }  
  28. bos.flush();  
  29. bos.close();  
  30. bis.close();  
  31.  
  32. os.close();  
  33. fis.close();  
  34. }  


 

 




本文转自 沫沫金 51CTO博客,原文链接:http://blog.51cto.com/zl0828/965197,如需转载请自行联系原作者

 

相关文章
|
Java
沫沫金::struts下载文档[解决方案]
   沫沫金在解决生成文档的最后,需要实现客户端下载功能。就好好写了一个完善的方法,贡献给大家。 特点: -中文支持 -全文当支持*.rar,*.zip,*.txt,*.doc -拷贝后直接使用 提示: URLEncoder使用Jar包 import java.
681 0
|
JSON 前端开发 Java
学习SpringMVC——国际化+上传+下载
每个星期一道菜,这个星期也不例外~~~     一个软件,一个产品,都是一点点开发并完善起来的,功能越来越多,性能越来越强,用户体验越来越好……这每个指标的提高都需要切切实实的做点东西出来,好比,你的这个产品做大了,用的人多了,不仅仅再是上海人用,北京人用,还有印度人用,法国人用等等,可以说这个产品已经走上了国际化的大舞台。
1097 0
|
Web App开发 JavaScript Java
uploadify在火狐下上传不了的解决方案,java版(Spring+SpringMVC+MyBatis)详细解决方案
 由于技术选型的原因,在一个产品中,我选择了uploadify,选择它的原因是它有完善的技术文档说明(http://www.uploadify.com/documentation/),唯一不足的是官方文档上的例子是用php写的。而对与我们这些使用Java语言的小生们而言,在遇到问题后发现找到一个适合自己的例子很不好找。特别是当遇到浏览器兼容问题的时候,找了好久最终发现按照网上的方式进行编写
1907 0
|
Java
struts2之单个文件上传(特别推荐)
通过2种方式模拟单个文件上传,效果如下所示 开发步骤如下: 1、新建一个web工程,导入struts2上传文件所需jar,如下图 目录结构              2、新建Action 第一种方式 package com.ljq.action; import java.io.File; import org.apache.commons.io.FileUtils; im
960 0
|
Java Maven Android开发
使用eclipse创建web项目的项目图文步骤
在eclipse中使用maven ① maven插件:eclipse内置 ②maven插件的设置:        [1]installations:指定maven核心程序的位置,不建议使用自带的maven程序而应该使用自己解压的那个     [2]user settings:指定conf/setting.
1235 0

热门文章

最新文章