不限制名字长度的中文附件下载,请教

qly1118 2009-07-14 04:55:48
现在遇到一个问题,下载的时候采用download.aspx页面获取附件ID 读取输出文件,
但是在设置http头"attachment;filename="+name (参数内容为:一二三.doc)时遇到问题:
1 参数name经过UTF8编码后可以正常显示为中文,但是超过一定长度头部就自动被截断(查阅资料原因为http头最多155个字符,UTF8一个中文字符转成9个字符,17个中文便超出了)
2 参数不经过编码,直接给filename,抓包看,会变成中文乱码,配置config文件gb2312还是乱码,设置 Response.HeaderEncoding = Encoding.GetEncoding("gb2312"),乱码

我从QQ邮箱的附件下载和163的邮箱附件下载 抓包看 他们直接跟的filename=“一二三一二三一二三一二三一二三.doc” 没有编码 支持不限长度的中文名称
为什么我的就是乱码呢?怎么解决?
客户那边附件基本为合同电子档,要求详细描述的中文名称作为附件名称。
...全文
52 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qly1118 2009-07-20
  • 打赏
  • 举报
回复
解决了
确实Response.HeaderEncoding = Encoding.GetEncoding("gb2312")
下就可以了
然后注意:
在IIS上运行可以 但是在 VS自带容器上跑不行
qly1118 2009-07-14
  • 打赏
  • 举报
回复
没人来么?
qly1118 2009-07-14
  • 打赏
  • 举报
回复
在线等

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧