注册|登录

联系电话:024-31891684  13390130939
沈阳软件公司--沈阳软件定制

沈阳软件开发_沈阳软件公司_沈阳软件定制/软件/最新技术

Latest technology最新技术

ie6处理下载文件名过长问题的解决方案

浏览量:4166

CRM定制,软件开发,办公OA 易势科技是你的好伙伴

今天终于发现,使用gb2312编码Header就可以使文件名长度限制为75个中文字符,已经基本满足了需要。就其原理,这是微软的一个bug,header长度有限制,好像是158个字节,如果使用UTF-8编码文件名,超过18个中文字符的文件名就会超过限制,产生文件名乱码。但是使用gb2312编码,每个汉字2个直接,就可以使中文件名的限制扩展到75个

 

Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.Buffer = true;
Response.HeaderEncoding = Encoding.GetEncoding("gb2312"); //此处编码必须为gb2312,文件名最多可有75个汉字
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + strFileFullName);
FileInfo objFileInfo = new FileInfo(Server.MapPath(strPath + "/" + strFileFullName));
Response.AddHeader("Content-Length", objFileInfo.Length);
Response.WriteFile(Server.MapPath(strPath + "/" + strFileFullName));
Response.Flush();
Response.End();

沈阳团购网|营口网站制作|沈阳软件公司|软件定制|网站建设|加盟易势|提交问题