通讯簿文件大小之谜

IT商界

  不知道大家是否发现本来可保存在一张磁盘上的通讯簿文件,在经过多次“导出/导入”后,其体积会急剧增大,从而导致无法在一张磁盘上存放的现象。为此我做了个实验,环境为Windows 2000 Server SP3 + OE6.0,具体步骤如下:把通讯簿导出到一个名为a.wab文件,大小为218KB;把原通讯簿中的内容全部永久删除,再把a.wab文件导入到通讯簿中;再把通讯簿导出到一个名为b.wab文件,结果发现大小居然为325KB!

  a.wab和b.wab文件的内容一样,应该大小也完全一样了!?后来我又把上面的2、3步骤反复做了多次,结果发现其文件体积越来越大(410KB、500KB、566KB...)。难道这是通讯簿的“BUG”?我用UltraEdit分析了一下这几个文件,发现它们的冗余(都是些无用的空格和其他信息)是越“导”越多,怪不得体积会急剧膨胀!其实清理这些冗余也很简单,下面我就介绍解决方法:

  1.清理“导出”后的通讯簿文件:在资源管理器中找到该文件(如上所说的b.wab),然后直接双击它,这时系统会调用“通讯簿”程序打开它。不做任何修改,关闭“通讯簿”程序,这时会在该文件的目录下出现了一个.wa~的文件(如b.wa~),你会发现它的体积要小多了。把先前的通讯簿文件删除,然后把.wa~文件的后缀名改为wab即可。

  2.清理系统内部的通讯簿文件:在资源管理器中打开X:\Documents and>Settings\Administrator\Application Data\Microsoft\Address Book(在Windows 9x中为X:\WINDOWS\Application Data\Microsoft\Address Book),X指你的Windows安装目录。在该目录中你可以找到名为XXX.wab和XXX.wa~的文件,XXX指你所用的账号。把XXX.wab文件删除,然后把XXX.wa~文件改名为XXX.wab即可。