﻿----------------------------------------------------------------------
此文件下载自"傲看软件园"------免费绿色软件下载站点
--------------------------------------------------------------
如果你觉得我们不错，请向你的朋友推荐！

                    ------傲看软件园,下载我喜欢(www.okhan.net)
                    ------源码下载,精品源码社区(www.okhan.cn)
--------------------------------------------------------------
解字板，是用来解读乱码的小工具。版本2.5

可解读：HTM--U，QP，URL，Base64，UTF7，HZ 
可转换：GB--Big5，GB--UTF8，英文--GB，GB--日文，GB--韩文 等
可解决：错失“半个汉字”造成的乱码

每种乱码的特征都列在操作菜单上，供用户对号入座。
打钩的是常见种类。

能够“撤消”“重做”，支持右键菜单，限制键盘编辑，保护原始文本。
只要“粘贴作原始”，即可作为原始文本得到保护。

本软件不用安装，可直接运行“JZB.exe”使用。

运行环境要求：
◇ 操作系统：简体中文版 Windows 98SE，ME，2000，XP，2003 ……
◇ 最好已经安装 MS Office 软件。

----------------------

◇ 必需的文件：只有一个，“JZB.exe”，允许改名。

◇ 文件“解字板说明.txt”

◇ 文件“FM20.DLL”和“FM20CHS.DLL”，对没有安装 MS Office 的用户可能有用。

◇ 文件夹“JZB_TXT”，用来给用户存放自己的文件。
  在文件夹这里，已预先存有一些参考资料：
  几个典型的乱码例子、“LCID表.txt”、“被简化.txt”

----------------------

使用提示：

◇ 经过复制、粘贴，文本可能会有损失。比较理想的是，直接打开原文件。

  当用IE看网页，或用OutLook看邮件，出现全篇的乱码，首先要尝试更改“查看/编码”的选择。
  同样，当用记事本打开文件后，看见全篇的乱码，首先要尝试更改“打开/编码”的选择。
  解字板的操作菜单所列的乱码特征，可供参考。

◇ 如果同一文本中存在不同种类的乱码，建议用"文件/新窗口"多开一个窗口，
  把单一种乱码复制出来解读。例如电子邮件eml文件，解字板目前还不能自动分别解码。

◇ 有时需要多次尝试，解读才能成功。
  如果确定某次尝试是不成功的，应该先撤消这次操作，甚至退到原始文本，再进行另一种尝试。

◇ 要用尽量少的操作次数来解读，以减少信息的损失。
  例如，解“Base64--UTF8”，相当于解“Base64--GB”然后解“GB--UTF8”，从命名可以看出来。

  具体的做法：打开文件“举例：Base64--UTF8.txt”，
  尝试解“Base64--GB”后，出现“GB--UTF8”的特征，然后尝试解“GB--UTF8”，解读出来了。
  这时，应该退回到原始文本，执行解“Base64--UTF8”。
  （撤消和重做的每一步，窗口左上角都有提示信息）

◇ 有时需要多种解读操作配合使用。

  例如，某些简体中文版的网页的乱码，有可能已经被统一“转简体”。对此要做如下处理：
  分别复制到两个解字板窗口，其中一个全文转繁体字，然后解读；另一个窗口不转，直接解读。
  往往两个窗口各自能解读出一些，需要我们将两者可以综合在一起。

◇ 解字板上的文本，不能像“记事本”或“MS Word”那样可以直接用键盘编辑。
  锁住了：字母键、数字键、回车键、空格键。
  可以用：箭头键，Home,End,PageUp,PageDown，以及各菜单上相应的快捷键。
         如[F8]键是空格，[F9]键是回车。
  鼠标右键菜单，等同于“编辑”菜单。

◇ 例如，输入“Hello!”：先把光标移到文本插入点，点击“编辑/插入”，
  或者按[Insert]键，然后在对话框中输入“Hello!”，确定。

  又例如，把文本中所有的“MS”都替换为“微软”：先在文本中选取“MS”，点击“编辑/替换全部”，
  或者按[F3]键，然后在对话框中输入“微软”，确定。

◇ 解字板的能力，仅限于操作菜单上所列的乱码种类。

◇ 若有重要的资料用解字板解读，请用户事先对原始文本进行备份保存，以防万一。

---------------------

乱码的命名及理由：

◇ 凡是不能直接阅读的字符串，都可以称之为乱码。
  乱码情况繁多，下面只讨论常见的一些类型。

◇ 字符串“經驗及體會”，用Big5编码，用GB解码，变成了“竒喷の砰穦”。
  这个编解的过程，编码和解码不匹配，叫“错解”。
  （相对而言，编码和解码是匹配的，叫“对解”）

  需要做一次反方向的错解：用GB编码，用Big5解码，还原为“經驗及體會”。
  “竒喷の砰穦”这种乱码，就命名为“GB--Big5”。

◇ 有意地用某种规则而做成的编码文本，也当作乱码来命名。
 “經驗及體會”经过UTF8编码，Base64编码，变成“57aT6amX5Y+K6auU5pyD”。

  需要用反方向操作来解读：Base64解码，UTF8解码，还原为“經驗及體會”。
  “57aT6amX5Y+K6auU5pyD”这种“乱码”，就命名为“Base64--UTF8”。

◇ 有意的乱码因为有严密的规则，一般能精确地还原。
  无意的乱码，信息会有不同程度的损失。
  例如，“UTF8--GB”乱码和“UTF8--Big5”乱码，失真太多，解字板不能解读。

◇ 有的乱码，是由于局部的字节移位造成的。如“半字+GB”。
  GB用2个字节表达一个汉字，1个字节就是所谓“半字”。
  当丢失或增加了1个字节时，引起随后的一串字节移位，结果若干个汉字变为乱码。
  如“經驗及體會”，变成“涷灱绑w會”。

  需要在乱码的开始处插入或删除1个字节，以抵消移位。名称“半字+GB”由此而来。
  加上原来丢失的1个字节，总共损失1个汉字，解读结果是“ 驗及體會”。

◇ 文件夹“JZB_TXT”里面的乱码举例的文件，都用UTF8编码保存。
  解字板打开文件时，会自动采用UTF8解码。

  只要是“对解”，就能使编码和解码相互抵消。
  这样，对乱码举例里的字符，没有任何影响。

◇ 字符内码转换，常用的起止方式有：
  (1)从字符到字符 (2)从文件到文件

  到目前为止，解字板只提供“从字符到字符”方式。
  用“见字操作”来解读乱码比较好。

---------------------

版本记录：
版本2.5（2010年2月）
◇ 改进Base64 QP的解码。
◇ 改进有关数组边界的纠错。

版本2.4（2010年1月）
◇ 增加UBE(-1)的转换。
◇ 改进：HZ--GB HTM--U 及 "错解"过程的代码。
◇ 加强输入窗口的编辑功能，增加编码的功能。
◇ 改进文件的“打开”“保存”窗口。
◇ 调整个别的菜单项和快捷键。

版本2.3（2009年12月）
◇ 调整“错码转换”菜单中的项目。
◇ 改进有关LCID的编排，增加“输入LCID”和“选择语文名称”。
◇ 改进输入对话框（查找、插入、替换）。

版本2.2（2009年10月）
◇ 改进“替换”功能。
◇ 增加“错码转换”菜单中的项目。

版本2.1（2009年7月）
◇ 剔除在字符串中可能产生的Null(全0)字符。
◇ 改进：UHex--U Utf7--U HZ--GB

版本2.0（2009年7月）
◇ 使文本框能够显示更多奇怪字符。
◇ 增加了可解读乱码的种类。
◇ 增加了可撤消和重做的次数。
◇ 完善了乱码的命名。

----------------------
软件作者：指知数（阿翔） andante2007@yahoo.cn
