CSV 差异对比工具
这款 CSV 对比工具专为新旧导出文件、CRM 快照、商品目录和 leads 列表而设计。它不会像传统逐行文本 diff 那样产生大量噪音,而是把每一行当作数据来比较,帮助你按 id 或 email 匹配行,并高亮真正发生变化的单元格。
差异预览
请上传两个 CSV 文件以预览 diff。
面向真实业务数据的在线 CSV diff
这款 CSV 对比工具专为新旧导出文件、CRM 快照、商品目录和 leads 列表而设计。它不会像传统逐行文本 diff 那样产生大量噪音,而是把每一行当作数据来比较,帮助你按 id 或 email 匹配行,并高亮真正发生变化的单元格。
示例:按 id 比较两个 CSV 导出文件
这是比较早期导出文件与较新版本时最常见的 workflow。一个行保持不变,一个行发生变化,一个行消失,另一个新行出现。
id,email,company,status,amount 1,anna@north.io,Northwind,lead,120 2,bob@atlas.io,Atlas,customer,250 3,carla@orbit.io,Orbit,lead,95
id,email,company,status,amount 1,anna@north.io,Northwind,lead,120 2,bob@atlas.io,Atlas,customer,320 4,david@nova.io,Nova,lead,180
status,key,changed_columns_count,summary unchanged,1,0,No changes. changed,2,1,Updated amount. removed,3,0,Row exists only in the original CSV. added,4,0,New row found in the updated CSV.
按 key column 比较 CSV 行
在线比较两个 CSV 文件时,最佳方式通常是按稳定的 key 匹配行,例如 `id`、`email`、`sku` 或 `uuid`。工具在检测到可能的 key column 时会自动推荐,但你也可以手动覆盖、选择多个 key column,或退回到整行比较。
当两个文件包含相同记录但顺序不同,或者导出之间列顺序被重新排列时,这一点尤其有用。
新增、删除、变更与未变更的行
diff 结果会将行划分为四种实用状态:新增、删除、变更和未变更。对于发生变更的行,预览会显示哪些列发生了变化,以及旧值与新值的对比。
这让该工具相比简单的 CSV 文本 diff 更实用,尤其是在你需要向非技术团队解释具体发生了什么变化时。
更精准比较所需的高级 CSV diff 设置
大多数在线 CSV diff 工具只提供一个基础的 compare 按钮。而这款工具在你需要按 key column 比较 CSV 文件、微调行的 join 方式、忽略仅格式层面的差异,或选择想下载的精确 diff 输出时,能提供更多控制能力。
为列名不同的 CSV 文件进行列映射
即使 CSV 文件中的列名不完全相同,您也可以进行比较。通过“列映射”设置,您可以在选择键列并运行差异比较之前,映射包含相同数据的字段,例如一个文件中的 `customer_id` 与另一个文件中的 `Customer ID`。
名称相同的列会自动以不区分大小写的方式匹配,因此 `Email`、`email` 和 `EMAIL` 可被视为同一字段。您可以检查自动映射结果、手动修改映射,也可以让部分列保持未映射状态,使其继续显示在行预览中,但不参与比较。
连接类型:全外连接、内连接或左连接
连接类型决定最终 CSV 差异结果中显示哪些行。默认使用全外连接,因为它会显示全部内容:已匹配行、新增行和已删除行。内连接仅保留两个文件中都存在的行。左连接以原始 CSV 为基准,适合主要查看哪些原始记录发生了变化或已消失的场景。
这对于“全外连接 CSV 比较”或“比较包含已删除行的新旧 CSV 文件”等搜索需求尤其有帮助,因为连接模式会改变差异结果的含义。
按 id、email、SKU 和多键匹配键列
如果您希望按 id、email、SKU、uuid 或其他标识符比较 CSV,键列设置是确保结果可靠的关键。该工具不会按照行的先后顺序匹配,而是根据所选键匹配记录,因此列顺序调整或行位置移动不会产生错误的差异。
当单个字段的唯一性不足时,您还可以使用多个键列。因此,该工具也适用于“按键列比较 CSV”或“按多列比较 CSV 文件”等更高级的搜索需求。
忽略空白字符、大小写和类 null 值的比较设置
实际导出的文件往往只有格式上的差异。一个文件可能包含多余空格、大写文本,或 `null`、`N/A`、空字符串等占位值。比较设置允许您在计算差异前忽略空白字符差异、忽略大小写,并将空值与类 null 值视为相等。
当用户需要比简单文本差异比较更高级的 CSV 比较工具时,这些选项非常重要。它们有助于减少干扰,让预览聚焦于实际的数据变化。
输出格式:摘要 CSV、已更改行 CSV 或完整差异 CSV
有些 workflow 只需要包含行状态和键的精简摘要;另一些则需要仅包含已更改行的 CSV,或将原始值与更新值并排展示的完整差异 CSV。您可以通过输出设置选择格式和分隔符,并决定导出的文件中是否保留未更改行。
这使该工具比许多免费的在线 CSV 差异比较工具更加灵活,因为导出结果可根据审计、业务评审、对账 workflow 或后续电子表格处理的需要进行定制。
在线比较大型 CSV 文件
该工具专为在线比较大型 CSV 文件而设计,无需尝试在浏览器中渲染每一行。它会计算完整的汇总数据,将预览限制在易于处理的样本范围内,同时仍允许您在之后下载完整的差异结果。
如果您需要一款适合大型导出文件的免费 CSV 差异比较工具,这正是本页面所提供的大文件 workflow。
兼容多种 CSV 编码
实际的 CSV 文件并不总是以普通 UTF-8 格式保存。该工具支持常见的电子表格和导出文件编码,包括 UTF-8、带 BOM 的 UTF-8、UTF-16 LE、UTF-16 BE、Windows-1252,以及 Latin-1 类型的文件。
当您需要在线比较来自 Excel、旧版业务软件或区域性导出系统的 CSV 文件时,这一点非常重要,因为这些文件原本可能会出现重音符号乱码或字符无法读取的问题。
差异数据表中的行号
按键列比较 CSV 文件时,差异数据表还可以显示每条匹配记录在源文件中的行号。如果该行的位置未发生变化,您会看到一个行号;如果记录移动过,表格会显示两个行号,方便您在两个文件中追溯该记录。
这对于审计、对账工作和支持案例非常实用,因为您不仅需要说明发生了哪些变化,还需要准确指出该行在原始 CSV 和更新后 CSV 中的来源位置。
基于浏览器的隐私处理
CSV 文件直接在您的浏览器中解析和比较。当您处理客户导出数据、收入快照、库存数据或其他应保留在本机的敏感电子表格时,这一点尤为重要。
由于查看结果前无需执行服务器端上传步骤,在线 CSV 差异比较也会更加快捷。