CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

Servlet自动文件下载中文文件名乱码问题,怎样解决

楼主rinco(天才白痴)2005-04-22 13:40:15 在 Java / Web 开发 提问

代码如下  
  //文件名为英文时没有问题,文件名为中文时,下载文件名显示为乱码  
  public   class   DBExcelWriter   extends   HttpServlet   {  
   
          public   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)  
          throws   IOException,   ServletException  
          {  
                  response.setContentType("application/vnd.ms-excel;charset=gb2312");  
                  response.setHeader("Content-disposition","attachment;filename=中文文件名.xls");  
                  OutputStream   os   =   response.getOutputStream();  
                  WriteExcelToStream(os);//将Excel写入OutputStream  
          }  
  } 问题点数:100、回复次数:4Top

1 楼su27007(人外有人,天外有天)回复于 2005-04-22 14:42:58 得分 100

兄弟,中文文件名是要转码才行的!  
  String   filename=new   String(sourceFileName.getBytes("Big5"),"8859_1");Top

2 楼bitou(大鹏一日同风起,扶摇直上九万里)回复于 2005-04-22 15:18:06 得分 0

难道你保存在服务器上的文件是以中文命名的?Top

3 楼rinco(天才白痴)回复于 2005-04-22 15:26:37 得分 0

谢谢su27007,可以了  
  to   bitou   服务器上没有文件,是直接写流到客户端,本类是一个报表转Excel文件的Servlet,客户端在保存/打开对话框中看到的文件名是一个中文文件名,也就是报表名.  
  public   class   DBExcelWriter   extends   HttpServlet   {  
   
     
          public   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)  
          throws   IOException,   ServletException  
          {  
                  String   fileName   =   new   String("中文文件名.xls".getBytes("GBK"),"iso-8859-1");  
  response.setContentType("application/x-octetstream;charset=gb2312");  
                  //response.setHeader("Content-disposition","attachment;filename="   +   URLEncoder.encode(fileName,"GBK")   +   "");  
                  response.setHeader("Content-disposition","attachment;filename="   +   fileName   +   "");  
                  OutputStream   os   =   response.getOutputStream();  
  os.write(fileName.getBytes());  
  os.flush();  
  os.close();  
          }  
  }  
  Top

4 楼rinco(天才白痴)回复于 2005-04-22 15:29:39 得分 0

该贴已经结帖,但结帖时出了错,SorryTop

相关问题

  • 上传文件名称,乱码
  • 文件下载,文件名乱码
  • upload文件名乱码问题?
  • Request.Files取到的文件名是乱码
  • zip解压缩中文文件名乱码问题
  • 解压缩中文文件名乱码问题???急
  • WAP下载下来的中文文件名字变成乱码
  • 文件名及文件夹名出现乱码,紧急求救!!!
  • 输出的文件名乱码的问题
  • 下载文件名乱码的问题.求教

关键词

  • 文件名
  • 中文
  • 文件
  • os
  • excel
  • setheader
  • filename
  • disposition
  • outputstream
  • response

得分解答快速导航

  • 帖主:rinco
  • su27007

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo