日本語.jpg
我通过对字符进行UTF-8编码,然后对Unicode字节进行百分号编码来对它们进行转义,以获得以下结果:
%E6%97%A5%E6%9C%AC%E8%AA%9E.jpg
当我在除Internet Explorer之外的任何浏览器中运行应用程序时,这些文件名都可以正常工作,我已经尝试过Firefox、Safari和Chrome。但是,当我在IE中启动应用程序并尝试加载声音片段时,我会收到错误#2044:未处理的ioError,并且URL已被损坏为以下内容:
æ¥æ¬èª.jpg
有什么想法可以解决这个问题吗?这只是使用本地文件系统URL测试驱动Flash应用程序。我还注意到Internet Explorer无法定位文件,例如:
file:///C:/%E6%97%A5%E6%9C%AC%E8%AA%9E.jpg
,虽然Chrome/Firefox将对其进行解码并正常加载路径为
C:\日本語.jpg
编辑import flash.display.Loader;
import flash.net.URLRequest;
...
var ldr:Loader;
var req:URLRequest = new URLRequest("日本語.jpg");
ldr = new Loader();
ldr.load(req);
使用字符串
日本語.jpg
在IE中可以正常工作,而使用字符串%E6%97%A5%E6%9C%AC%E8%AA%9E.jpg
则可以在其他浏览器中正常工作。我需要的是一个能在所有浏览器中正常工作的表单。我已经尝试过使用%u
编码和将http请求头设置为Content-Type: text/html; charset=utf-8
,但无论是百分号转义还是未转义都没有成功。
%65%E5%67%2C%8A%9E
。 - Gumbo