Beyond Compare相同文件为何显示差异

原文地址: http://www.beyondcompare.cc/wenti/wenjian-chayi.html

Beyond Compare是一款经典老牌且优秀的专业级文本比较工具,它可以很方便地对比出两个文件夹或文件之间的不同之处。在使用Beyond Compare软件比较文件时,有时候个人觉得相同的文件却显示存在差异,接下来就详细讲解一下这个问题。

差异一:纯文本比较,显示差异

如果两个文本文件看起来是一样的,但显示差异,很可能在行尾部分有差异。当行结束是不同的,二进制比较将显示一个错配,即使实际的文本是相同的。

例如,Windows用 CR和低频,控制字符每一行的末尾,而Unix的单独使用低频。已复制或编辑在不同的系统文件就会以不同的行结束样式作为结尾。您可以使用十六进制比较会话或文本比较查看,十六进制详细信息,以确定字节的差异。

解决方法

在文件夹比较会话操作界面,单击工具栏“会话”按钮,选择会话设置,并选择比较选项卡。打开的选项卡窗口,启用比较内容选项,启用基于规则的比较。

Beyond Compare相同文件为何显示差异 
Beyond Compare 软件会话设置—文件夹比较选项卡界面图例

差异二:相同办公软件文件比较,显示差异

Microsoft办公软件,例如Excel文件可能看起来是一样的,但可能是文件大小不同,又或许在查看文件时改变时间戳。微软的Office包括在所有Office文件格式的版本和时间戳信息。它还跟踪的文件上次访问的时间。这会导致文件大小和二进制差异,即使可见文件并没有改变。解决这个问题的唯一方法是使用基于规则的比较方式,比较文件的内容。

Beyond Compare相同文件为何显示差异 
Beyond Compare表格比较会话操作界面图例

差异三:可执行文件和DLL,显示差异

两个可执行文件或DLL可以从相同的源进行编译,但使用二进制进行比较时被标记为不同的。很可能你的编译器是将某种时间和版本信息插入到DLL,即使它们看起来是相同的,创造一个二进制差值的DLL。

大多数编译器将信息插入DLL和EXE文件,很难使两个独立的编译出相同的代码相同的二进制比较。您可以通过选择两个文件,并做一个文本比较内容测试,二进制比较操作快速验证这一点。

经过上述内容的详细分析,Beyond Compare文本比较为何会存在差异的难题就能迎刃而解。如果您还有困惑,欢迎查看教程:Beyond Compare对比相同文件仍显示红色怎么办

上一篇:java_model_dao_自动生成_generator-mybatis-generator-1.3.2 基于maven插件


下一篇:[转载]TFS源代码管理8大注意事项