`

jsp文件下载另存为中文文件名

 
阅读更多
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.File"%>
<%@ page import="java.io.*"%>
<title>文档下载保存中转页面</title>
</head>
<!--
  *文件名:down_center.jsp
  *实现功能:服务器上保存的文件名为按上传时间命名的
                下载时自动替换为中文文件名
  *遗留问题:无格式判断功能,有待开发
  *编写时间:2006-9-5
  *代码编写:郑兆童
  *最终修改时间:2006-9-5
  *最终修改内容:无
-->
<body>
<%
String root = getServletContext().getRealPath("/");      //得到网站绝对路径
//String filepath = "upload_file\\lwfile\\";                        //设置文件存放的相对路径(windows)
String filepath = "upload_file/lwfile/";                             //设置文件存放的相对路径(linux)
String fileName = request.getParameter("filename");    //得到文件名
String myName = "中文文档下载.doc";                              //文件改名

out.print(root + filepath + fileName);

// 设置响应头和下载保存的文件名
response.reset();
//response.setContentType("application/octet-stream");       //windows
//response.addHeader("Content-Disposition", "filename=\"" + myName + "\"");      //windows
response.setContentType("application/octet-stream; charset=GBK");     //linux

response.addHeader("Content-Disposition", "attachment; filename=\"" + new String(myName.getBytes("gb2312"),"iso8859-1") + "\"");      //linux


//新建文件输入输出流
OutputStream output = null;
FileInputStream fis = null;
try{
  //新建File对象
  File f = new File(root + filepath + fileName);
  //新建文件输入输出流对象
  output = response.getOutputStream();
  fis = new FileInputStream(f);
  //设置每次写入缓存大小
  byte[] b = new byte[(int)f.length()];
  //out.print(f.length());
  //把输出流写入客户端
  int i = 0;
  while((i = fis.read(b)) > 0){
    output.write(b, 0, i);
  }
  output.flush();
}
catch(Exception e){
  e.printStackTrace();
}
finally{
  if(fis != null){
    fis.close();
    fis = null;
  }
  if(output != null){
    output.close();
    output = null;
  }
}
%>
</body>
</html>
 

 

分享到:
评论

相关推荐

    JSP读取TXT文件并显示

    2、当TXT文件内容包含中文时,有时会显示乱码,解决方法:打开TXT文件,在“另存为”对话框中选择“UTF-8”格式); 3、当TXT文件名为中文时,无法读取,页面会显示空白内容; 4、经测试,只有搜狗告诉浏览器可以...

    jspSmartUpload 使用教程

    接着重新启动Tomcat,这样就可以在JSP文件中使用jspSmartUpload组件了  按上述方法安装后,只有webapps/jspsmartupload目录下的程序可以使用jspSmartUpload组件,如果想让Tomcat服务器的所有Web应用程序都能用它...

    jspsmart.jar包及帮助文档

    ㈠ File类  这个类包装了一个上传文件...其中,sourceFilePathName为要下载的文件名(带目录的文件全名),contentType为内容类型(MIME格式的文件类型信息,可被浏览器识别),destFileName为下载后默认的另存文件名。

    JspSmartUpload上传文件到文件夹重名问题解决方法

    //将获取的图片另存为文件名为new,后缀名从原是文件中获得 file.saveAs(dir+"/new."+file.getFileExt(),su.SAVE_VIRTUAL); //获取图片的客户端路径名 String name1=file.getFilePathName(); out.print("客户机...

    文件上传下载demo

    文件上传,下载,对jspSmartUpload组件的SmartUpload类做了升级处理,在提示另存的文件名时,不会显示一堆中文乱码

    JSP实用技巧集合,jsp编程的一些小技巧总结

    24. 在JSP中如何调用浏览器中的"另存为"功能? 25. 网页全屏显示 26. 求两个日期相隔了多少天:输入时间格式为(yyyy-mm-dd) 27. 上传文件对话框 28. 分页测试 29. 下载文件 30. 简单汉字判断 31. 将JSP的变量或者bean...

    jsp编程技巧集锦

    在JSP中如何调用浏览器中的"另存为"功能? 25. 网页全屏显示 26. 求两个日期相隔了多少天:输入时间格式为(yyyy-mm-dd) 27. 上传文件对话框 28. 分页测试 29. 下载文件 30. 简单汉字判断 31. 将...

    jspSmartUpload上传下载

    form action="add_do.jsp" name="formlft" method="post" ENCTYPE="multipart/form-data" check(this)"&gt; &lt;tr&gt;&lt;TD width=18% align="center"&gt;date: &lt;td align=center width='18%'&gt;&lt;input type=...

    JAVA上百实例源码以及开源项目

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包---java 源码 大量 实例

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包4

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包2

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java访问权限控制源代码 1个目标文件 摘要:Java源码,文件操作,权限控制 Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流...

    java源码包3

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java访问权限控制源代码 1个目标文件 摘要:Java源码,文件操作,权限控制 Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流...

    JAVA上百实例源码以及开源项目源代码

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JavaScript网页特效范例宝典源码

    实例089 验证输入的字符串是否为汉字 139 实例090 验证身份证号码 140 实例091 验证用户名和密码 142 实例092 验证车牌号码 144 实例093 验证网站地址 145 实例094 验证数量和金额 147 实例095 验证字符串是否以指定...

Global site tag (gtag.js) - Google Analytics