浏览 6400 次
锁定老帖子 主题:iconv的bug还是编码表问题?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-01-31
引用 1930%nbsp雪弗莱%nbsp无敌 –%nbsp396大滑轮,350涡轮传送
这样的一个字符串,在网页上用GB2312,可以正常的显示那个红色标示出来的横杠. 但是当我用这样的代码作编码转换时 temp = Iconv.conv("UTF-8","gb2312",a) 提示这样的错误 引用 new.rb:29:in `conv': "\250C%nbsp396\264\363\273\254\302\326"... (Iconv::IllegalSequence)
但是改用gb18030做转换编码后,就不会出现任何错误。 temp = Iconv.conv("UTF-8","gb18030",a) 按照iconv的提示红色横杠并存在于gb2312的编码表中.可是网页中又能够显示出来。 那么这个到底是gb2312编码表问题还是iconv的bug? 我越来越觉得 类似这类中文相关的编码问题,成了ruby 和ROR在国内应用上的一个硬伤了.中文编码问题如果不妥善解决,Ruby和ROR推广和应用始终有隐患存在. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-01-31
这个,你的开发环境Windows是GB18030支持的吧,Iconv是调用操作系统本地库的,所以可能对你的操作系统编码支持比较敏感。其实Java的乱码问题照样到现在都存在,不过也没有影响到国际化问题。
|
|
返回顶楼 | |
发表时间:2007-01-31
这类问题的存在就不得不去花一些时间去寻找替代方案。主要开发的精力也会因这些问题而分散。这类问题多了,也就敏捷不起来了
|
|
返回顶楼 | |
发表时间:2007-01-31
我也遇到过类似的问题, 是在ubuntu下面发生的。
不过,偶不求甚解,没仔细追究,心里总觉得有些不爽。 |
|
返回顶楼 | |
发表时间:2007-01-31
我也遇到过类似的问题,显示乱码在浏览器中又是正常的。
可能是因为浏览器本身的语言识别能力很强的缘故。 |
|
返回顶楼 | |
发表时间:2007-03-20
不支持unicode绝对是硬伤。
|
|
返回顶楼 | |
发表时间:2007-03-23
“网页上的GB2312”实际上是GBK。Iconv用的也不是Win32的API,是libiconv里的码表。
|
|
返回顶楼 | |