[quote]1930%nbsp雪弗莱%nbsp无敌 [color=red]–[/color]%nbsp396大滑轮,350涡轮传送[/quote]
这样的一个字符串,在网页上用GB2312,可以正常的显示那个红色标示出来的横杠.
但是当我用这样的代码作编码转换时
[code]temp = Iconv.conv("UTF-8","gb2312",a)[/code]
提示这样的错误
[quote]new.rb:29:in `conv': "\250C%nbsp396\264\363\273\254\302\326"... (Iconv::IllegalSequence) [/quote]
但是改用gb18030做转换编码后,就不会出现任何错误。
[code]temp = Iconv.conv("UTF-8","gb18030",a)[/code]
按照iconv的提示红色横杠并存在于gb2312的编码表中.可是网页中又能够显示出来。
那么这个到底是gb2312编码表问题还是iconv的bug?
我越来越觉得 类似这类中文相关的编码问题,成了ruby 和ROR在国内应用上的一个硬伤了.中文编码问题如果不妥善解决,Ruby和ROR推广和应用始终有隐患存在.