|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-05-13
咋办?这个字比较重要,不能ignore掉...
如下ruby代码不能执行... require "iconv"
puts Iconv.iconv("GB2312","UTF-8",'陶喆')
t.rb:2:in `iconv': "\xE5\x96\x86" (Iconv::IllegalSequence) from t.rb:2:in `<main>' 如果陶喆里的那个'喆'去掉就没问题... 我的目的是用RSS::Parser.parse解析rss文章,发现有喆的文章会因为那个字无法解析有乱码... 我又用了python url = 'http://blogsearch.baidu.com/s?word=%D6%F7%B3%D6%C8%CB%D6%EC%B5%A4&tn=baidublogrss&bsm=0&rn=10' import feedparser c = feedparser.parse(url) for e in c.entries: print e.title 显示 'gbk' codec can't encode character u'\xc3' in position 0: illegal multibyte sequence 问题解决了 require 'rss/2.0' require "iconv" url = 'http://blogsearch.baidu.com/s?word=%D6%F7%B3%D6%C8%CB%D6%EC%B5%A4&tn=baidublogrss&bsm=0&rn=10' text = open(url).read text.sub!(/gb2312/,'gb18030') feed = RSS::Parser.parse(text.to_s,false) for item in feed.items puts Iconv.iconv("gb18030","utf-8",item.title) end 网上的gb2312字库不全,要改成gb18030就行了 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-12
GBK呢?GB18030呢?
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-12
theone 写道 GBK呢?GB18030呢?
都用过,乱码,打不出那个字 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-12
puts Iconv.iconv("gb18030","UTF-8",'陶喆')
没有问题啊 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-12
irb(main):005:0> puts "陶喆"
陶喆 => nil |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-26
为什么不用 UTF-8?
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-26
说了800遍了,字符集统一全部使用utf8,哪里都不会有问题。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-31
Lucas Lee 写道 说了800遍了,字符集统一全部使用utf8,哪里都不会有问题。
问题是别的网站的服务,代码你能统一吗 |
|
| 返回顶楼 | |
|
最后更新时间:2008-06-24
加个chars了?
|
|
| 返回顶楼 | |
|
最后更新时间:2008-07-04
恩 我发现 在转换的时候 UTF-8 转城 GB2312 像()等是无法识别的 报异常
|
|
| 返回顶楼 | |











