java 文件下载,中文表名,中文内容
2017-06-30 09:53
281 查看
@RequestMapping("userDownloadTemplet")
private void userDownloadTemplet(HttpServletRequest request,HttpServletResponse response, String filePath){
try {
filePath = request.getSession().getServletContext().getRealPath("/WEB-INF/download_templet/用户信息模板.csv");
File file = new File(filePath);
String filename = file.getName(); // 取得文件名。
// String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase(); // 得文件的后缀名。
InputStream fis = new BufferedInputStream(new FileInputStream(filePath)); // 以流的形式下载文件。
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
response.reset(); // 清空response
filename = new String(filename.getBytes("GBK"), "ISO-8859-1");;
response.setHeader("Content-Disposition","attachment;filename=" + filename);
response.setContentType("application/vnd.ms-excel;"); //设置文件类型
response.setCharacterEncoding("utf-8");
response.addHeader("Content-Disposition", "attachment;filename=" + filename);// 设置response的Header
response.addHeader("Content-Length", "" + file.length());
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
private void userDownloadTemplet(HttpServletRequest request,HttpServletResponse response, String filePath){
try {
filePath = request.getSession().getServletContext().getRealPath("/WEB-INF/download_templet/用户信息模板.csv");
File file = new File(filePath);
String filename = file.getName(); // 取得文件名。
// String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase(); // 得文件的后缀名。
InputStream fis = new BufferedInputStream(new FileInputStream(filePath)); // 以流的形式下载文件。
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
response.reset(); // 清空response
filename = new String(filename.getBytes("GBK"), "ISO-8859-1");;
response.setHeader("Content-Disposition","attachment;filename=" + filename);
response.setContentType("application/vnd.ms-excel;"); //设置文件类型
response.setCharacterEncoding("utf-8");
response.addHeader("Content-Disposition", "attachment;filename=" + filename);// 设置response的Header
response.addHeader("Content-Length", "" + file.length());
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
相关文章推荐
- strtus2 批量下载 中文问题、压缩文件等 ------ 讨论struts2工作流程 (摘自:http://www.blogjava.net/xcp/archive/2009/10/30/downloadlist.html)
- java 上传文件代码,支持中文文件名和中文文件内容,可以同时提交多个参数
- Java中文乱码——7、Tigo文件下载乱码
- Java: IE & Firefox下载文件中文乱码的兼容代码
- Java实现文件下载并解决中文文件名乱码
- java读取文件内容(中文文件解决办法)
- java实现中文文件下载,解决乱码问题,亲测无问题~~
- 下载文件中文名出现乱码 java
- java.util.Properties读取中文内容的配置文件,发生中文乱码的现象有解决方案
- javaweb-day06-1 (Servlet - Response - 输出中文、输出1、中文名字的文件下载、字符流读图片会导致数据丢失的剖析)
- java读写中文内容的文件
- java 文件下载 解决中文问题
- Java下载文件时处理中文 使用URLEncoder编码后 空格变+号的问题
- java下载远程服务器中以中文命名的文件
- java web应用文件下载(包括中文文件名乱码处理)
- java下载文件在各个浏览器差异 以及中文乱码解决
- 通过java代码来下载FTP地址中带中文的文件
- java实现文件下载 中文文件名乱码的解决
- Java strtus2文件下载不同浏览器文件名中文乱码处理
- JAVA:获得网页下载文件内容