在IE6下附件名称如果超过16或者18个字符,下载时会被截断,该问题的解决方法

记录一下该问题的解决方法,有同事说已经验证可行,我还没空验证,先记录下来

int fileSize=输出流大小;

string fileName=文件名;

Encoding gb2312 = Encoding.GetEncoding("gb2312");
fileName = gb2312.GetString(Encoding.Convert(Encoding.Unicode, gb2312, Encoding.Unicode.GetBytes(fileName)));
Response.HeaderEncoding = Encoding.GetEncoding("gb2312");
Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;
Response.ContentType =GetContentType(fileType);
Response.AddHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");

Response.AddHeader("Content-Length", fileSize);
byte[] buf = FileContent(输出流)
Response.BinaryWrite(buf);
Response.Flush();
Response.End();

posted @ 2012-07-17 14:14  灿烂的鸟  阅读(414)  评论(0编辑  收藏  举报