第一种:
Image组件的源地址是中文的,比如resources/数学/高等数学/math.jpg;
tomcat中的server.xml中配置端口的那段加上 URIEncoding="utf-8";
直接访问资源地址如:http://localhost:8080/WebTest/resources/数学/高等数学/math.jpg;
这种情况下Image组件不能显示出来,下面直接访问的地址能访问到数据。
第二种:
Image组件的源地址是GBK的,比如比如resources/数学/高等数学/math.jpg;
tomcat中的server.xml中配置端口的那段加上 URIEncoding="GBK";
直接访问资源地址如:http://localhost:8080/WebTest/resources/数学/高等数学/math.jpg;
这种情况下Image组件式能显示出来的,但是直接访问的那个地址是不能访问到数据的。
第三种:
mage组件的源地址是utf-8的,比如resources/%E6%95%B0%E5%AD%A6/%E9%AB%98%E7%AD%89%E6%95%B0%E5%AD%A6/math.jpg;
tomcat中的server.xml中配置端口的那段加上 URIEncoding="utf-8";
直接访问资源地址如:http://localhost:8080/WebTest/resources/数学/高等数学/math.jpg;
这种情况下Image组件式能显示出来的,直接访问的那个地址是也能访问到数据。
原因分析:
浏览器默认的编码方式是utf-8的,flex中地址默认是采用utf-8的,而tomcat默认的编码方式是ISO-8859-1的,即我们访问的地址都是iso-8859-1编码的,如果不设置tomcat中的编码方式即为默认的iso-8859-1方式,那么浏览器中的请求地址中的中文是不能被解析的,所以请求不到资源,因此,我们通过设置tomcat的编码方式为utf-8即可以通过浏览器访问到含有中文名的资源。同理默认情况下flex组件也访问不到带有中文路径的资源;
如果tomcat设置为utf-8的,我们可以访问http://localhost:8088/EncodingTest/resource/未命名.jpg类似的地址,但是对于flex中<mx:Image source="resources/体育/足球/1.jpg" />这样的组件还是显示不出来(这点我也疑惑,还望高人指点),但是我们设置为<mx:Image source="resources/%E4%BD%93%E8%82%B2/%E8%B6%B3%E7%90%83/1.jpg" />这样我们就能访问到了。
如果tomcat编码方式设置为GBK的话,对于flex组件<mx:Image source="resources/体育/足球/1.jpg" />我们是可以访问到的,但是对于<mx:Image source="resources/%E4%BD%93%E8%82%B2/%E8%B6%B3%E7%90%83/1.jpg" />这样的我们是访问不到的,对于浏览器中的地址http://localhost:8088/EncodingTest/resource/未命名.jpg,我们是访问不到的,但是对于我们把未命名进行GBK编码之后的%CE%B4%C3%FC%C3%FB替换了,即http://localhost:8088/EncodingTest/resource/%CE%B4%C3%FC%C3%FB.jpg就能访问了。至于如何取得中文的GBK编码我们可以通过java方法取得,比如String s="未命名.jpg";s=java.net.URLEncoder.encode(s,"GBK");这样就取得了“未命名.jpg”的GBK编码了。
总结如下:
总结出了一个基本解决中文编码的方法,即tomcat中设置编码为utf-8,flex中组件要访问资源的路径如果带有中文那么我们去把中文转换成utf-8格式的在赋值给组件的source属性,对于浏览器中访问的地址就可以是带有中文的访问地址了。
分享到:
相关推荐
flex中文帮助flex中文帮助flex中文帮助flex中文帮助
flex 汉字转拼音
flex 跨域访问问题, flex不在同一个域,解决办法
flex中文帮助文档flex中文帮助文档
使用 ADOBE FLEX 45访问数据 目录 第 1 章: 访问数据服务概述 Flex 与其它数据访问技术的比较 使用 Flash Builder 访问数据服务 数据访问组件 第 2 章: 使用 Flash Builder 构建以数据为中心的应用程序 创建 Flex...
flex中文教程flex中文教程flex中文教程
最短路径分析--flex端实现代码示例。 服务要限制为动态的,结果图层为两个,一个是输入点,一个是输出结果
Flex中文帮助 技术支持: http://www.ZzGps.Cn 技术分享
flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助...
FLEX中文教程+实例
Flex中文帮助 学习Flex的好资料 入门提高都实用
flex DataGrid中文字符排序类 用法见 http://blog.sina.com.cn/s/blog_5fc933730100iign.html
Flex学习文档,Flex中文文档,,记载了各种学习心得
flex中文帮助flex中文帮助flex中文帮助flex中文帮助flex中文帮助flex中文帮助flex中文帮助flex中文帮助
Flex 汉字排序,不过这个只能判断大部分汉字,一些特殊的字符,搞不定,比如“旮旯”等特殊汉字
FLEX中文教程、FLEX中文帮助、FLEX开发指南
flex教程 Flex中文基础教程Flex中文基础教程Flex中文基础教程
本文所有资料均来自Flex官方文档,其英文版权归 Adobe公司所有。 均有实例代码讲解
flex中文基础教程,适合初学者