TextWizard是Fiddler文本编解码工具,用来测试极为方便由于对其的其他功能网上已经很多,这里只介绍Encodings的用法,由于字符集和字符编码是比较抽象的,所以本文介绍的是研究方法,少有结论。首先转换格调为HexEncode,十六进制编码,即为字符最基础的编码ASCII码,或类ASCII码(超出ASCII中的128字符的用类似于ASCII码的方式编码,一符一码),
得到“中”的本来面目,如果选HEXDecode则返回“中”,因为中的本来面目是e4b8ad。
然后点击Encodings弹出上边两个下拉框,下边的Transform下边是输出框其实就代表结果。
先拿大家喜闻乐见的“中”字举例,中的unicode,utf-8,GB2312如下图,可知中的Unicode是0x4e2d、UTF-8是
经过测试两个下拉框是分枝结构,修改(按键盘上的“↓”测试)其中一个的值不会改变结果框内容,测试方法是按“↓”时一旦有变化则修改另一个下拉框的值(按“↓”)。所以,输入是我们输入的内容,即为图中的"中",经过input或output处理后交给Transform(下拉选项处理)。
输入一个GB2312中没有字符:“䶵”,Output选GB2312,Transform选HexEncode,返回%3f
3f=3*16+8=63对应ASCII码为?
输入:中”,Input选GB2312,就经过了GB2312编码处理,处理的结果为D6D0,D6D0的base64编码为1tA=;
Input选Unicode(UTF-8)[65001-utf-8]),就经过了Unicode编码处理,处理的结果为E4B8AD,E4B8AD0的base64编码为1tA=5Lit.而右边的Output怎么选也不会影响结果。注意,这里的Unicode实际上的UTF-8编码,具体如何转换,前面的图中有
了解TextWizard使用起来才会更方便。可以试一试"中"分别在Output的unicode、GB2312下,Transform选HexEncode的输出结果