@RequestMapping("/downLoadFailRecord")
public ModelAndView downLoadFailRecord(
HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("filePath")String filePath) throws Exception{ log.info("======文件路径====filePath:"+filePath); String excelData = ""; String str = "医路通保存失败统计记录"; excelData = medicalService.getFailMedical(filePath); log.info("*******解析的字符串为:"+excelData); response.setContentType("application/ms-txt;charset=UTF-8");
response.addHeader("Content-Disposition","attachment; filename=" + new String(str.getBytes("GBK"),"ISO8859_1") + ".xls");
response.getWriter().write(excelData);
return null;
}
excelData为object类型的数据字符串
方法二:发现的有点晚,还好不算太晚
@RequestMapping(value="downLoadFile")
public void downLoadFile(HttpServletRequest request, HttpServletResponse response) throws Exception
{ //方法二:非常好用的下载文件代码
String outFileName = "测试文件.xls";
String filePath="d:/batchInsure.xls";
/*String outFileName = "测试文件.csv";
String filePath="d:/secendTest.csv";*/ BufferedInputStream bis = null;
BufferedOutputStream bos = null;
ServletOutputStream out = null;
PrintWriter pw = null;
FileInputStream fis = null;
fis = new FileInputStream(filePath);
response.setHeader("Content-disposition", "attachment;filename="+URLEncoder.encode(outFileName,"UTF-8"));
out = response.getOutputStream();
bis = new BufferedInputStream(fis);
bos = new BufferedOutputStream(out);
byte[] buff = new byte[2048];
int len = 0;
while((len=bis.read(buff))!=-1){
bos.write(buff,0,len);
}
bos.flush();
out.flush();
}

方法二非常好用,适合各种类型的文件

 

java如何编写下载功能的更多相关文章

  1. java开发在线下载功能,自动打开浏览器下载功能下载网络文件或图片

    因为业务的需要,公司产品要求商品详情页面有个下载的功能 找了很多的方法,发现有的需要打开一个新窗口,而且在某些浏览器上不适用,所以继续寻找更好的方法 跟同事沟通后发现他那里有个下载的方法,不过是C#写 ...

  2. java 多线程断点下载功能

    import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.io.Rand ...

  3. 手机端UC浏览器,在java开发的下载功能中存在的问题?

    在java web开发中,不同浏览器对下载文件的格式有不同的要求,有时会出现视频,音频等文件无法下载的问题.我在开发中,也遇到类似的问题,觉得很苦恼. 经过百度和请教学习,得到2个解决方案. 首先得到 ...

  4. Java 实现视频下载功能

    public static boolean httpDownload(String httpUrl, String saveFile) { // 1.下载网络文件 int byteRead; URL ...

  5. Fastjson是一个Java语言编写的高性能功能完善的JSON库。

    简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库. 高性能 fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson. ...

  6. Java导出excel并下载功能

    我们使用的导出并下载功能是利用一个插件叫POI的插件提供的导出功能,很实用:首先先导入Jar包: Jar包下载地址:http://poi.apache.org/   官方文档地址:http://poi ...

  7. JavaWeb实现文件上传下载功能实例解析

    转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web应用系统开发中,文件上传和下载功能是非常常用的功能 ...

  8. JavaWeb实现文件上传下载功能实例解析 (好用)

    转: JavaWeb实现文件上传下载功能实例解析 转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web ...

  9. excel导入、下载功能

    1.excel导入.下载功能 2.首先,我们是居于maven项目进行开发引入poi,如果不是那就手动下载相应的jar包引入项目就可以了 <!-- poi --> <dependenc ...

随机推荐

  1. Charles抓取https包

    Android: 1.若滑动解锁,请先设置屏幕锁: 2.然后浏览器输入Charlesproxy.com/getssl,安装证书,出现安装证书提示,随便打个名称 比如Android,选择WLAN(这里A ...

  2. DirectX中坐标系问题

    自己属于笨类型,以前总是记不住directx坐标系是怎样的,今天在网上看到一篇文章,借鉴过来. 1. 明确DirectX是左手坐标系. 描述如下:1. 伸出左手,手面朝上,手背朝下,握住z轴,大拇指方 ...

  3. gcd(欧几里得算法)

    基础 int gcd(int a,int b)   {       int r;       )       {            r=a%b;            a=b;           ...

  4. Eclipse.Error.gen already exists but is not a source folder.

    在Eclipse ADT来开发Android App时会遇到以下问题:"myproject/gen already exists but is not a source folder. Co ...

  5. lua 2.2 变种

    1.修改 ~= 操作符为 != 2.取消 --[[ ]] 多行注释语法 下载源码

  6. Collection和Collections的区别是什么

    1)java.util.Collection是一个集合顶层接口,该接口的设计目的是为各种具体的集合提供最大化的统一的操作方式,它提供了对集合对象进行基本操作的通用接口方法,实现该接口的类主要有List ...

  7. Subarray Sum Equals K LT560

    Given an array of integers and an integer k, you need to find the total number of continuous subarra ...

  8. C# WebService创建、发布、调用的简单例子

    Web service是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式的互操作的应用程序. Web ...

  9. NOIP训练测试3(2017081601)

    上一波题还是比较水的吧?[?????] 也许吧! 但时间还是比较紧的,所以我从2.5个小时延长至3个小时了. 不管了,做题不能停,今天继续测试. 水不水自己看,我什么也不说(zhe shi zui h ...

  10. hdu-6058 Kanade's sum

    题意:略 思路:要我们求每个区间第K大数之和,其实可以转换为求多少个区间的第K大数是X,然后我们在求和就好了. 那么我们可以从小到大枚举所有可能成为第K大的数.为什么从小到大呢? 因为从小到大我们就略 ...