PNDiff文本比较器

1、界面概述

         PNDiff界面如下图1所示主要分成Title, Menu, Button, Compare和status这几个区域。Title区域用来显示当前比较的文件全路径;Menu区域有File, Edit, View, Diff, Tool和Help菜单,File菜单用来打开/增加/减少用来比较的文件,Edit菜单可以对打开的文件做一些简单的编辑,View菜单用来设置文件的颜色/字体/参数/语法,Diff菜单用来设置/清除/比较/列表/跳转文本比对,Tool菜单用来打开查看系统信息(System Information)、文件加解密(Encrypt/Decrypt)、文件分解和合并(Split/Join)以及文件列表打印(Directory Print)这几个小工具,Help菜单用来打开用户手册、查看版本信息。Button区域有File, Edit, Search, Diff, Review, Tool和Help按钮,其功能和菜单栏中对应的类似。Compare区域显示diff比较的结果,这个结果是和文件中的内容对应的,分别找出行和列不一致的地方并用不同的颜色标识出来。Status区域主要显示当前比较的文件名以及比较的结果。

图1 PNDiff窗口各区域

2、多模式可配置的文本比对

         PNDiff提供了多种可配置的文本比对模式,用户可以根据自己的需求做相应的配置进行比对,点击菜单栏或者按钮中的Diff Setting可以打开下图2设置界面,在这个设置界面中可以分别配置行模式,列模式和行范围,根据配置的值分别做相应的文本比对。

图2 Diff模式设置窗口

2.1、行模式配置

         在行模式配置中有Auto,Precise和Customized这三个模式选择,如下图3所示。

         图3 Diff行模式设置

         Auto行模式,PNDiff在做文本行比对时会根据读入的文本行数自动生成一个行偏移值和一个块偏移值。这两个偏移值的作用是被用来在比对时做展开比较使用的,行偏移值表示文件在比较时将从当前行扩展偏移值个再做行内容的比较,块偏移值表示文件在比较时将从当前行扩展偏移值个再做块内容的比较。

图4 Diff行模式Auto示例

         如上图4例子所示,在行的Auto模式下test_old_line和test_new_line这两个文件在比较时,根据自动设置的行/块偏移值在文件中找到一个符合行偏移之后相同的行,即test_old_line文件中的第4行和test_new_line文件中的第2行。找到该相同行之后将这两行再做对齐,即将test_old_line文件中的2-3行标识为多余行”Redu”,并将test_new_line文件中在第1行和第二行之间插入两个遗漏行”Miss”。

         Precise行模式,PNDiff在做文本行比对时会将读入的文本进行逐行比较。

图5 Diff行模式Precise示例

         如上图5例子所示,在行的Precise模式下test_old_line和test_new_line这两个文件在比较时,由于是逐行比较,取这两个文件中最少的行数16行,先将test_old_line文件中的第1-16行和test_new_line文件中的第1-16行逐行比较,没有一行能匹配上,两个文件的1-16行都表示为不同行”Diff”。再对这两个文件做行尾对齐,即将tes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值