推广 热搜: csgo  vue  angelababy  2023  gps  新车  htc  落地  app  p2p 

ai文件打是乱码 response.setHeader(

   2023-07-04 网络整理佚名1670
核心提示:关于中文文件下载的问题,网上的咨询和答疑已经很多,我原来处理下载的代码如下:不支持这样的方式,将把编码后的%xx%xx直接作为文件名显示。按网上很多人提供的解决方案:将文件名编码成-1似乎是有效的解决方案,代码如下:在确保附件文件名都是简体中文字的情况下,那么这个办法确实是最有效的,不用让客户逐个的升级IE。0-en)下载也是乱码。/*根据的得出可能的编码,中文操作系统通常是*/

关于下载中文文件的问题,网上有很多咨询和解答。 我原来处理下载的代码如下:

.("-", "; = " + ..(, "UTF-8"));

下载的程序中加上这句话,无论是简体中文还是日文,在IE6的下载提示框中都会正确显示文件名。 不过确实,当时文件名很长的中文文件名并没有经过仔细的测试。 现在经过仔细测试,发现只要文字超过17个字符,就无法下载。 经过大量的测试和反复的测试,我终于对这个问题有了系统的认识,罗列如下:

1.通过我原来的方法,即先使用编码,当汉字超过17个时,IE6无法下载文件。 这是 IE 中的一个错误,请参阅 的知识库文章。 原因可能是IE在处理时,pair的长度被限制在150字节左右。 而一个汉字编码成UTF-8是9个字节,那么17个字符就是153个字节,所以会报错。 微软已经提供了一个补丁,可以从这里下载。 该补丁需要先安装ie6 sp1。 因为我平时经常打补丁,所以我的IE6版本号是6.0.2800.1106。 所以我可能已经修补了它,以便它可以下载并且仍然会截断文件名。 微软让我们等待下一个 IE 包的发布。 今天我也在网上看到了好消息。 迫于压力,IE7可能会在年中发布。 另外,不支持这种方式,编码后的%xx%xx会直接显示为文件名。

2.我尝试使用.()方法对文件名进行编码,即以=??B??=的形式进行编码,并从中找到对应的标准支持。 不幸的是,IE6不支持这个标准。 我尝试了一下,是支持的。

3、根据网上很多人提供的解决方案:将文件名编码成-1似乎是一个有效的解决方案。 代码如下:

.( "-", ";= " + new ( .(""), "-1" ) );

在保证附件的文件名都是简体中文的情况下,那么这种方法确实是最有效的,不需要客户一一升级IE。 如果台湾同胞用的话,改成big5就可以了。 但目前的系统通常会增加国际化支持,常用UTF-8。 文件名中是否包含简体中文、繁体中文、日文。 然后就会产生乱码。 另外我电脑上下载的(v1.0-en)也是乱码。

考虑到折衷,我结合了方法1和3,代码片段如下:

= .(atta.(), "UTF-8");

如果 (.() > 150) {

=xxxx

= new (atta.().(), "-1");

}

.("-", "; = " + );

暂时不考虑,因为似乎对IE的企业用户市场影响不大。 影响客户账单的往往是进度,而不是兼容性。

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON