Chinaunix

标题: 实在搞糊涂了iconv从gb2312转utf-8碰到繁体就出问题 [打印本页]

作者: yjm0573    时间: 2008-04-18 13:37
标题: 实在搞糊涂了iconv从gb2312转utf-8碰到繁体就出问题
希望宗翰來台灣遊玩
这是sina论坛上帖子的内容,编码的确是gb2312的。
http://bbs.service.sina.com.cn/t ... =34358&id=20625

把该内容抓下来后,用c函数iconv把它转成utf-8后,从 "來" 开始就没有了,该怎么解决啊?

[ 本帖最后由 yjm0573 于 2008-4-18 13:38 编辑 ]
作者: yjm0573    时间: 2008-04-18 13:39
明明是繁体不是应该至少是gbk啊,难道gb2312也能显示一些繁体?
作者: yjm0573    时间: 2008-04-18 17:11
上帝啊,咋回事呢
作者: haplo    时间: 2008-04-18 17:45
刚试了一下,
iconv -fgbk -tutf8
可以正常转换,但是-fgb2312会出错。
系统是RHEL4U4
作者: old-cow    时间: 2008-04-18 17:47
big5
作者: yjm0573    时间: 2008-04-18 17:54
原帖由 old-cow 于 2008-4-18 17:47 发表
big5

这个应该不是big5吧
作者: yjm0573    时间: 2008-04-18 17:57
原帖由 haplo 于 2008-4-18 17:45 发表
刚试了一下,
iconv -fgbk -tutf8
可以正常转换,但是-fgb2312会出错。
系统是RHEL4U4


我也试了一下,也是同样效果

现在疑惑的是:这些数据

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>玉蘭花開_休闲生活_新浪论坛_新浪网</title>
<meta name="keywords" content="玉蘭花開,休闲生活,新浪论坛,新浪网" />
<meta name="description" content="玉蘭花開,休闲生活,新浪论坛,新浪网" />

明明在网页中显示的是gb2312,可他就是能显示繁体,到底是咋回事呢?
作者: 醉卧水云间    时间: 2008-04-18 17:57
gb2312不包括正体, 18030包括了.
作者: yjm0573    时间: 2008-04-18 18:05
原帖由 醉卧水云间 于 2008-4-18 17:57 发表
gb2312不包括正体, 18030包括了.

我上网查过gb18030,gbk都包含一些繁体,唯独gb2312只包含一些简体,

如果在网页里:】

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>玉蘭花開_休闲生活_新浪论坛_新浪网</title>
<meta name="keywords" content="玉蘭花開,休闲生活,新浪论坛,新浪网" />
<meta name="description" content="玉蘭花開,休闲生活,新浪论坛,新浪网" />

charset设成gbk那应该才是对的啊,他设成gb2312这不误导嘛
作者: 醉卧水云间    时间: 2008-04-18 18:55
你都用18030标准转就是了.
作者: yjm0573    时间: 2008-04-21 11:43
原帖由 醉卧水云间 于 2008-4-18 18:55 发表
你都用18030标准转就是了.


明白了,以后遇到gb2312就当作gbk或者gb18030来转了,谢谢。
作者: iunknown    时间: 2008-04-21 13:38
原帖由 yjm0573 于 2008-4-18 17:57 发表


我也试了一下,也是同样效果

现在疑惑的是:这些数据


玉蘭花開_休闲生活_新浪论坛_新浪网



明明在网页中显示的是gb2312,可他就是能显示繁体,到底是咋回事呢?


这个很怀疑是 浏览器 做的一个优化。因为从 gb2312 -> gbk -> gb18030 ,后面的编码都是兼容前面的。
目前的浏览器普遍应该都支持 gbk ,因此即使网页标注为 gb2312 ,但是浏览器内部很可能按 gbk 来处理。
gbk 是包含了繁体字的。
作者: nully    时间: 2008-04-21 14:28
原帖由 醉卧水云间 于 2008-4-18 17:57 发表
gb2312不包括正体, 18030包括了.


繁体就是繁体,搞什么"正体",
繁体成正体,那简体不就是"反体"?

对gcd当年的文字改革有意见可以,但至少简体你我从小用到现在,别学某些台湾巴子的话。
作者: yjm0573    时间: 2008-04-22 09:54
原帖由 iunknown 于 2008-4-21 13:38 发表


这个很怀疑是 浏览器 做的一个优化。因为从 gb2312 -> gbk -> gb18030 ,后面的编码都是兼容前面的。
目前的浏览器普遍应该都支持 gbk ,因此即使网页标注为 gb2312 ,但是浏览器内部很可能按 gbk 来处理。 ...


多谢你的思路,刚查了一下现在只能确定中文xp系统默认就支持gbk,可能和这个也有关系




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2