如何使Beyond Compare比较按名称匹配列的数据文件,而不是按顺序

Jos*_*rry 6 csv comparison beyondcompare beyondcompare3

我有两种情况:

  1. 两个具有相同列数的csv文件,但列顺序不同.csv的第一行是标题行,并正确指示列名称
  2. 两个csv文件具有一些不同的列,但实际上大多数列都存在于两个文件中.同样,csv标题行指示可以比较的列名称

在上述两种情况下,BC3都无法自动匹配/更改列顺序.这可以通过Session Settings菜单手动完成,但相当耗时.

以上#2的例子

请注意,在以下屏幕截图中,左侧文件有一个名为priority右侧文件的列.

之前(默认情况下列与订单匹配):

请注意,在下图中,左侧文件的第5列priority与右侧文件的第5列进行比较companyjob.以下所有列比较同样不匹配.

之前

之后(使用名称手动匹配的列):

后

有没有一种简单方法可以轻松/自动配置此比较,因为我在第二张图片中手动完成了这项操作?

jxr*_*mos 1

在我看来,您可以在Beyond Compare中保存比较会话(简称为会话),这是两个文件系统对象之间的实际差异。您在上面更改的这些设置特定于该会话,但您希望它们适用于任何其他类似的会话。我想知道是否可以使用手动输入的数据比较列设置来保存会话,并更改类似格式文件的路径以使它们采用相同的列设置。让我看看...

考虑三个文件

文件1.csv

Column1,Column2,Column3
A,B,C
A,B,C
A,B,C1
Run Code Online (Sandbox Code Playgroud)

文件2.csv

Column1,Column3,Column2
A,C,B
A,C,B
A,C1,B
Run Code Online (Sandbox Code Playgroud)

文件3.csv

Column1,Column3,Column2
A,C0,B
A,C,B
A,C,B
Run Code Online (Sandbox Code Playgroud)

这是文件 1 和 2 之间的默认差异file1.csv 和 file2.csv 之间的默认数据会话

在这里我更改了数据比较列设置将右侧文件中的第 3 列向上移动一级 现在显示这两个具有排列列的文件之间没有任何变化。在此输入图像描述

保存该会话后,我然后编辑地址栏,将 file2.csv 替换为类似格式的 file3.csv,然后等待查看列设置是否得到维护,在我看来,它们是在此输入图像描述

因此,我想您可以将这些列设置保留在任意示例会话中,稍后您必须更改您希望在该时间点进行比较的实际文件的路径。当然有点尴尬,如果将这些设置作为预配置设置应用,就像在文件夹比较会话中保存要应用于新会话的过滤器设置一样。

然而,我很好奇为什么你的对话框看起来与我导航编辑设置的地方不同;特别是你的显示一个下拉菜单,上面写着“仅用于此视图”。该下拉列表中还列出了哪些内容?我正在使用版本 3.3.8(内部版本 16340)