如何识别utf-8或gbk编码的中文内容

上一篇 / 下一篇  2007-11-28 11:14:49 / 个人分类:其它

51Testing软件测试网R,p0k1CA8bn`:y(K5E

使用tcpdump抓包得到下面的数据:51Testing软件测试网O2n~2p&y)q9Y

0x0040  6c2e 6a73 703f 444e 3d43 2533 6443 4e25       l.jsp?DN=C%3dCN%51Testing软件测试网9M{zW K

0x0050  3263 4f25 3364 4346 4341 2532 3054 4553       2cO%3dCFCA%20TES

#_*a:e#?)RR o00x0060  5425 3230 4341 2532 634f 5525 3364 4351       T%20CA%2cOU%3dCQ

7xt5JP%oi?00x0070  4342 2532 634f 5525 3364 656e 7465 7270       CB%2cOU%3denterp51Testing软件测试网(lGJ_ C!B^1T

0x0080  7269 7365 7325 3263 434e 2533 6430 3431       rises%2cCN%3d04151Testing软件测试网1j&gM3cT5C5IM

0x0090  2534 3034 3131 3131 3125 3430 2545 3625       %40411111%40%E6%

5S"q2Gv3xP00x00a0  3932 2541 3425 4539 2539 3425 3830 2534       92%A4%E9%94%80%4

Dz'Z hHe00x00b0  3030 3030 3030 3030 3125 3030 2653 4e3d       000000001%00&SN=51Testing软件测试网b-\l~)Wt6Wl

0x00c0  3631 6266 6661 3836 6533 6536 6261 6163       61bffa86e3e6baac51Testing软件测试网*q1YgRM2s,M

0x00d0  3239 3061 3063 6134 3738 6464 3064 3865       290a0ca478dd0d8e51Testing软件测试网%BJ N(k z'a

0x00e0  2530 3026 696e 666f 7365 633d 3139 3225       %00&infosec=192%

)Pg&IZ"r7n-ilR00x00f0  3265 3136 3825 3265 3025 3265 3131 3620       2e168%2e0%2e116.

5B1?{ _6ORrIF051Testing软件测试网Y!V{&t){Bnj-Q

可以使用下面的方法确定%E6%92%A4%E9%94%80%部分是乱码,还是中文字符的正确表示。

1.        首先确定编码是utf-8还是gbk。由于utf-8用三个码表示一个字,gbk用两个码表示一个字,“%E6%92%A4%E9%94%80%”预期为撤销两个字,因此确定该编码为utf-8编码;

2.        创建一个utf-8编码的文本文件,内容为预期的“撤销两个字”,然后使用UltraEdit打开该文件,切换到十六进制模式(选择工具栏上的“H”),utf-8的前三个码为文件头,因此从第四个码开始与“%E6%92%A4%E9%94%80%”进行比较(%为分隔符),如果一致表示该段编码为中文“撤销”;

3.        如果不一致,将该段编码中的每个码替换到文件中,然后保存,切换到普通模式查看(或直接使用记事本查看),如果为不可打印的字符,则为乱码;

4.        如果编码为gbk编码,则在创建文件时,编码选择ANSI其他步骤同上。

}f_EAV0 注,在UltraEdit中查看ASCII表:选择view->ASCII table,调出ASCII51Testing软件测试网 d/w:n*S9_ w,]1U1NU

4I Q9M Hx*~C_)J0 51Testing软件测试网{4h*[2B:IoW

^4e#U-n'p1i|U&o0注:2007年5月28日写于msn共享空间51Testing软件测试网L h#R}2kZ i


TAG: 其它 utf-8 gbk

 

评分:0

我来说两句

Open Toolbar