免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 749 | 回复: 0
打印 上一主题 下一主题

编码问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-14 13:41 |只看该作者 |正序浏览
   
合并XML文件时要根据某些项的内容判断做对应的处理。但是这涉及到字符的编码问题,文件的编码是EUC-JP的,读出来的字符在perl中是UTF-8
的;在perl程序中定义的常量字符串是EUC-JP的,这样两者比较就不能得到正确的结果。我是把读出来的xml文件中的项的内容用Encode::
encode转变为EUC-JP的,然后比较,这样就会出现多次的转换,效率会出现问题。我刚开始想通过Encode::encode把常量字符串转变为
utf8的,但是打印出来的字符串没有改变;在比较的时候,如果被比较的是asc7的值,就会出现没有转换;如果被比较的是wide
character,则转变的字符又不对。
      可以把常量字符串用Encode::from_to('euc-jp','utf8',$str)转变为utf8的。但是还是不行,然后在调用函数Encode::_utf8_on($str)打开perl的utf8开关。就可以了。
      问题得到解决。实际这种办法在cpan官方文档中提到了,所以一定要看官方文档。
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/37325/showart_381732.html
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP