关于汉字编码问题!求解
Ãå¹ð»¨¿ªÊ®ÀïÏã
这是印尼客户发过来的数据信息是中文的!在他们那边显示的是正常中文!有什么办法可以将它永久转换成在简体中文操作系统下的正常汉字显示
分不够可以在加
问题点数:100、回复次数:10Top
1 楼fjqiang(五月)回复于 2006-12-01 11:45:33 得分 0
为什么我的乱码汉字发不上来啊?Top
2 楼lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))回复于 2006-12-01 11:49:36 得分 0
你的知道他们是什么编码的
然后你用这个编码解析就可以了Top
3 楼cancerser(都是混饭吃,记得要结帖)回复于 2006-12-01 11:51:06 得分 40
这堆码中文是什么意思?Top
4 楼cancerser(都是混饭吃,记得要结帖)回复于 2006-12-01 12:00:16 得分 0
你把 byte发上来就成
^^^
如果是标准的印尼编码,我可能帮不了你,我机器上没这种编码,顶Top
5 楼fjqiang(五月)回复于 2006-12-01 12:10:07 得分 0
195 0 229 0 185 0 240 0 187 0 168 0 191 0 170 0 202 0 174 0 192 0 239 0 207 0 227 0
这是以Unicode编码方式转换出来的字节数组
中文意思是:缅桂花开十里香Top
6 楼lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))回复于 2006-12-01 12:43:45 得分 0
如果编码不是Unicode的
那你用Unicode得到的byte就是错的Top
7 楼SysPlus(万诱引力)回复于 2006-12-01 12:45:16 得分 0
Unicode->gb2312Top
8 楼lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))回复于 2006-12-01 12:46:11 得分 40
比如说
string s = "中国":
byte[] b = Encoding.Unicode.GetBytes(s);
byte[] bb = Encoding.UTF8.GetBytes(s);
byte[] bbb = Encoding.GetEncoding("gb2312").GetBytes(s);
这三个byte是不一样的
所以你必须知道他的编码才可以~~~Top
9 楼mxldream(小石头)回复于 2006-12-01 12:52:14 得分 20
我还真碰到过这事儿, 当时我是一发狠建了一个暴大的Hashtable(大约6000个), 作了一个汉字和外码的对照表, 然后每次都用这个表转换一下.
至于使用.net自带的那些Encoding类, 根本就不行
作这个hashtable表时要注意, 要把该cs文件的保存选项代码页设为unicodeTop
10 楼fjqiang(五月)回复于 2006-12-04 15:02:07 得分 0
6000个的哈希散列表....
楼上的你还真是狠啊Top





