文件/文件夹比较工具

前两天耳火同学写了一篇,推荐了一款免费的反汇编工具,可以在很大程度上替代那个抢钱的 IDA Pro(我去看了一下,可惜现在好像只支持 PE 格式、x86 系列指令集)。他还说是响应我的号召,令我十分感动,同样响应老汉这一号召的还有豆豆龙同学,在此一并感谢。

文件和文件夹的比较是个听起来不大,处理起来却很麻烦的事情,曾在很长一段时间内都苦于找不到趁手的工具,直至遇到了 Beyond Compare。对这个软件的景仰之情实在是滔滔不绝,老汉已经在原来写过赞美之词,在此不再赘述。可惜一直用的是盗版的,前两天要在 Windows 7 上比较文件夹,才发现又到了尴尬境界,要么需要再去寻找免费的好用的工具,要么打破不在上面安装未被许可的软件的规则,踌躇良久,还是决定不破例。

收费的比较工具很多,我也试用了几款,能够和 Beyond Compare 抗衡的也有,例如 Examdiff Pro(三火兄的最爱)、Araxis Merge,或者 Altova DiffDog。UltraEdit 的厂商也有一款比较软件,叫 UltraCompare Pro,由于我对 UltraEdit 一向很不感冒,所以并没有试用。需要注意的是,我没有把单纯只能对比两个文件的工具考虑在内,而都是具有文件夹级别的比较功能的(而且是可视化的)。

免费的我只找到两款(其实另外还有一款,Windows 程序员应该基本上都知道,就是 SDK 自带的 WinDiff,还有源码呢)。一款叫 WinMerge,另一款叫 SourceGear DiffMerge。后者是一个商业公司开发的免费软件,也可以使用,但不是我今天要说的主角。主角是 WinMerge,它的早期版本,我在非常久远的时间之前曾经用过,当时不假思索就抛弃了,界面实在太难看。这次迫不得已再次捡起来试用,没想到却是一个惊喜。界面已经相当漂亮,比较的结果也非常不错,功能上比 Beyond Compare 逊色的最大的地方就是各种不同的颜色呈现略为简陋。稍有瑕疵的地方是中文翻译有的不太精细,有的词条则还没有翻译,幸好它的多语言支持系统是标准的 po 文件,我老人家就自己辛苦了一下(需要下载的请点击这里,用于 WinMerge 版本 2.12.4.0)。强烈推荐使用。

最后顺便说一下单纯的文件比较工具。这类工具很多,因为有的是针对特定的文件类型的,比如文本、图像、声音、办公文档、XML 文件等等。比较通用的是文本文件比较工具和二进制比较工具。有关文本文件的比较工具我不再推荐,只是给大家一个链接,是 codeproject.com 的一个 Code Lean and Mean 比赛,让大家实现一个文本比较工具,里面有好几个选手的作品和思路都很有意思,下面的跟贴讨论也值得一看。专门的二进制比较工具,开源的我知道一个 xdelta(备注:其实这个项目的主要目的是实现数据的差分压缩),商业的我没有单独用过,原来一直在用的是 Hex Workshop 或者 Beyond Compare 的内置比较功能。

一条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注