介绍下我项目中遇到的问题:在数据库导出Excel文件的过程中,导出文件中文名始终异常,最终结果发现需要在response.addHeader 中的 filename = "xxxx"  参数需要重新编码…
问题:下载文件时文件名乱码怎么解决? 在C#写后台代码过程中,经常遇到下载文件出现文件名乱码的问题,在网上找了很多方法,总是存在浏览器不兼容的问题,当IE浏览器不乱码时,火狐浏览器就会乱码,后来经过反复研究,发现一个问题,那就是我们主流的浏览器中火狐浏览器与其他浏览器(IE.Chrom等等)还真是不一样,所以,在下载写入头部分是先做一个判断,判断是否为火狐浏览器,后来发现完全没问题! var filename = year + "xxxx.xls"; //判断是否为火狐浏览器 var…
本文转自:http://hi.baidu.com/yuxi981/item/7c617fc41b03ad60f6c95d30 Response.AddHeader实现下载     /// <summary>    /// Response.AddHeader实现下载    /// </summary>    /// <param name="filePath">完整的文件路径</param>    /// <param name=&…
string filename = HttpUtility.UrlEncode(Encoding.UTF8.GetBytes("培训班自然情况表")); Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.doc", filename + System.DateTime.Now.ToString("yyyymmddhhmmss…
通过在http的header里设置fileName下载附件时,中文文件名通过chrome浏览器下载时正常,通过firefox下载时为乱码: 原来的Java代码: response.addHeader("Content-Disposition","attachment;filename="+ URLEncoder.encode(downloadName,"UTF-8"). replace("+", "%20"…
1. HTTP消息头 (1)通用信息头 即能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头,如Data,Pragma 主要: Cache-Control , Connection , Data , Pragma , Trailer , Transfer-Encoding , Upgrade (2)请求头 用于在请求消息中向服务器传递附加信息,主要包括客户机可以接受的数据类型,压缩方法,语言,以及客户计算机上保留的信息和发出该请求的超链接源地址等. 主要: Accept…
1.文件下载,指定默认名Response.AddHeader("content-type","application/x-msdownload"); // 限制类型Response.AddHeader("Content-Disposition","attachment;filename=文件名.rar");// 下载后的文件名 2.刷新页面Response.AddHeader (“REFRESH”, ”60;URL=newpa…
Django下载中文名文件: from django.utils.http import urlquote from django.http import HttpResponse content = export.export_to_xls() response = HttpResponse()response['Content-Type'] = 'application/octet-stream'title = '商品管理.xls'response['Content-Disposition'…
(一)文件下载,指定默认名 Response.AddHeader("content-type","application/x-msdownload"); Response.AddHeader("Content-Disposition","attachment;filename = 要下载的文件名.后缀名"); (二)刷新页面 Response.AddHeader ("REFRESH", "60;U…
Response.AddHeader使用实例 1.文件下载,指定默认名 Response.AddHeader("content-type","application/x-msdownload"); Response.AddHeader("Content-Disposition","attachment;filename=文件名.rar"); 2.刷新页面 Response.AddHeader ("REFRESH&qu…
之前有写过"Microsoft Edge浏览器下载文件乱码修复方法",发现很多情况下下载文件乱码问题还是存在,这里对之前内容做简单补充,希望可以帮到大家. 方法二: 默认如果提示下载乱码,我们也可以在Edge浏览器里选择更多工具--使用Internet Explorer打开: 同样位置我们选择下载文件,此时我们发现下载文件名恢复正常. 方法三: 如果只有部分网站的话,我们可以通过在edge浏览器栏输入about:flags--在开发者设置中勾选"使用Microsoft 兼容性…
作者 muzuiget  发布 2013-03-13 19:23  标签 redisposition Firefox 下载文件名乱码问题由来已久,偶然一两次还可以手动改名,批量下载时简直要亲命,最终我还是写了个通用型的扩展来解决. 下载安装 名字叫 ReDisposition,已经上传到 AMO,并且通过了初步审核.源代码 在 GitHub 上. 免重启扩展,目前体积不到 20K,并且提供一个工具栏按钮以便无痛切换.   但是这个扩展不是万能药,不要指望安装上自动解决所有问题,你必须继续阅读下面…
如果fileName为中文则乱码.解决办法是 方法1: response.setHeader("Content-Disposition", "attachment; fileName=" + java.net.URLEncoder.encode(fileName, "UTF-8"));下载的程序里有了上面一句,一般在IE6的下载提示框上将正确显示文件的名字,无论是简体中文,还是日文.但是文字只要超过17个字,就不能下载了.一. 通过原来的方式,也…
如果file.Name为中文则乱码.解决办法是方法1:response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));下载的程序里有了上面一句,一般在IE6的下载提示框上将正确显示文件的名字,无论是简体中文,还是日文.但是文字只要超过17个字,就不能下载了.一. 通过原来的方式,也就…
前段时间被某个前端小可爱鄙视了一下,说我博客都一年不更新了,我不服,明明还有俩月才到一年呢.不过说是这么说,还是要更新一下的. 以上都是借口,下面开始正文.     我公司的某个内部系统,用django做的,项目中不可避免地有下载文件的地方,以前偷懒,我都是用django自带的方法,在项目的总urls.py中使用 urlpatterns += static(FILEPATH, document_root=FILEPATH) 这种方法解决.   但是这种方法有个极大的缺陷:测试环境写着玩可以,正式…
如果file.Name为中文则乱码.解决办法是方法1:response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));下载的程序里有了上面一句,一般在IE6的下载提示框上将正确显示文件的名字,无论是简体中文,还是日文.但是文字只要超过17个字,就不能下载了.一. 通过原来的方式,也就…
附件下载时,遇到中文附件名的兼容性问题,firefox.chrome.ie三个派系不兼容,通过分析整理,总结出处理该问题的办法,记录如下: 1.文件名编码 服务器默认使用的是ISO8859-1,而我们java代码里默认用的是UTF-8,所以需要在传给服务器时转换一下 2.浏览器对文件名的处理方式 微软在处理附件文件名时,是使用的URL解码处理,所以需要对微软系的浏览器进行单独处理 代码如下: public String dealAttachmentName(HttpServletRequest…
为了形象化,先看几张不同浏览器下下载文件时的效果图: 1:Firefox 36.0.1 2:IE8 3:Chrome 40.0.2214.93 m 4:360 7.1.1.322 很明显在Firefox下出现了乱码,出现乱码一般是字符集的问题,这是怎么回事呢?为什么其他的浏览器都没有问题呢?看了一下Firefox的字符集是Unicode,改成简体中文看看,发现文件名是不乱了,不过网页的其他部分全乱了,连百度都乱了!如下图所示: 恩,一时我也不知道是什么原因,看看Firefox下的下载文件的响应信…
问题概要 利用Apche-POI.XSSFWorkbook.write,处理excel文件,通过response.outputstram导出文件,预览乱码. 解决办法 1.检查设置response,代码如下: response.setContentType("application/msdownload"); response.setCharacterEncoding("utf-8"); response.setHeader("Content-dispos…
服务器端以/开始就代表当前项目名客户端必须以 /项目名/资源 才能定位到资源 软件与软件之间,以字符为标准传递,传递字节,接收端自己按原来的编码集编码之后再按照自己的编码集解码编码(如果没有对应字符,将会丢失数据)软件与文件或者浏览器之间,以字节为标准传递,传递字节,接收端直接将字节按照自己的编码集进行编码(不会丢失数据)数据丢失发生在解码的时候 servlet一定要初始化之后才能对里面的对象赋值,否则对象为null 加载----初始化----执行----消亡如何实现数据共享 方案1(了解):静…
public ActionResult OverAllSummaryExport(string id) { #region 解决中文乱码 Response.HeaderEncoding = Encoding.UTF8; string fileName = "安全生产标准化自评结果整体输出.doc"; if (Request.UserAgent != null) { string userAgent = Request.UserAgent.ToUpper(); if (userAgent…
Content-Disposition中文乱码 Response.setHeader(”Content-Disposition”, “attachment; filename=” + fileName+”.xls”);如果file.Name为中文则乱码.解决办法是 response.setHeader(”Content-Disposition”, “attachment; filename=” + java.net.URLEncoder.encode(fileName, “UTF-8″)); 下…
Response.setHeader("Content-Disposition", "attachment; filename=" + fileName+".xls");如果file.Name为中文则乱码.解决办法是方法1:response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encod…
问题描述:需要url直接访问中文名的文件,类似于在地址栏里直接输入http://localhost:8080/example/丽江旅游攻略.doc 来进行文件下载,tomcat的server.xml文件中connector的URIEncoding配置成utf-8时,没有问题,配置成gbk时,无法下载,url被解析成乱码,资源不存在. 查阅大量资料,更深入的理解了url编码解码,分析原因是由于浏览器会默认使用utf-8对url包含的非英文字符进行编码,而tomcat中配置的是对url的解码方式,所…
问题触发环境 1. java中使用org.apache.commons.net.ftp.FTPClient包 2. 通过chrome浏览器的file标签上传文件 3. 在windows上部署的FileZilla服务上传的文件名正常显示,在linux上的vsftpd服务文件名显示乱码 4. 直接chrome浏览器访问linux的ftp目录(chrome的默认编码是UTF-8),正常显示 5. 乱码出现后,尝试了各种方式编码处理,造成了环境的各种不可追溯 解决过程 1. 查询资料:FTP协议规定文件…
一.故事 首先通过CDO.Message来获取邮件EML相关数据:邮件标题.邮件内容.邮件附件.发件人.收件人.CC主要就这么几个,其次通过MailMessage来组织邮件通过Python来发送邮件! 就这么简简单单的需求!!问题出现了,中文附件名!Web打开始终是乱码!使用邮件客户端FireFox是OK的,查看了FireFox源码发现是乱码,这点说明FireFox的强大,非常强大! Content-Type: application/octet-stream; name=鎶ラ攢鍗昪s.xlsx…
java web开发,常用到的文件上传功能,常用的commons-fileupload和commons-io两个jar包.关于如何使用这两个jar来完成文件上传的功能,这里不做详解.使用commons-fileupload来上传文件,有两种方式可以是实现. 1. 传统API <%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" language="java"%&…
HttpServletResponse response = ServletActionContext.getResponse();        response.setCharacterEncoding("utf-8");  response.setContentType("text/xml;charset=utf-8");      response.setHeader("Cache-Control", "no-cache&quo…
大家在做多个站点的时候,可能会遇到下载下来的报告文件出现乱码. 法国站点和意大利站点均会出现这样的情况,那怎么解决呢? 这是由于编码的问题而导致,在我们读取数据插入到本地数据库的时候,不妨先将格式转成对应国家能正确识别的格式. 在文档中也有看到. 还要一个问题需要说明,由于操作系统设置默认语言的原因,在小国家站点,我们下载下来的报告可能会出现乱码的情况.这种情况很正常,在调用接口的时候,也没有办法去解决直接下载就出现正常编码. 现在的方法是将下载下来的乱码文件,通过流操作,重新编码,根据上图对应…
Struts1中通过action, return到页面的时候,如果代码中使用到response.getWriter().write(),那么有可能jsp页面中汉字会变成乱码.百度上有人说改为response.getWriter().print(),试着无效.在response.getWriter().write()之前加一句response.setContentType("text/html;charset=UTF-8");   就行了.jsp页面头上写的那句ContentType就是…