java - 如何查找两个 JSON 文件中的差异并打印出现差异的行号
问题描述
我有两个对象顺序相同的 JSON 文件。我想打印两者的差异,并打印发生差异的行号。例如。输出应该是这样的:
“在 Expected.json 中发现的差异:在“在此处打印 LineNumber”-> 在此处打印差异。
解决方案
像这样的东西:
Scanner file1 = new Scanner(new File(file1Path));
Scanner file2 = new Scanner(new File(file2Path));
int lineCounter = 1;
while(file1.hasNextLine() && file2.hasNextLine()) {
lineFile1 = file1.nextLine();
lineFile2 = file2.nextLine();
if(!lineFile1.equals(lineFile2)) {
System.out.println("Difference found in Expected.json: on " + lineCounter);
System.out.println("File1 line: " + lineFile1);
System.out.println("File2 line: " + lineFile2);
}
lineCounter++;
}
推荐阅读
- python - Insert ... ON DUPLICATE KEY INSERT 新的东西
- python - botocore.exceptions.clienterror 调用copyobject操作时发生错误(keyTooLongError)
- unity3d - Unity中如何将两个着色器合并为一个着色器
- python - 有没有办法让一个循环有两个范围?
- c# - 在一个国家/地区生成随机纬度/经度多边形?
- hibernate - 休眠缓存不适用于一对一关系的反面
- python - matplotlib:使用 matplotlib 或 seaborn 显示每个日期的所有产品价格的折线图
- reactjs - 如何在数组中添加对象
- angular - ngbTooltip 和 ngb 分页不起作用
- python - `__dict__` 何时重新初始化?