总有没有比较保存在两个不同文件夹中的XML文件(具有相同名称)并找出它们之间的区别吗?我想比较存储在不同文件夹中的多个XML文件以进行测试。我很高兴以Java,Groovy脚本,python等任何语言进行探索,
请添加您的想法。非常感谢您的帮助!
答案 0 :(得分:2)
在Python中:
filecmp: File and Directory Comparisons:
import filecmp
cmp = filecmp.cmp('file_1.xml', 'file_2.xml')
# Files are equal
if cmp:
continue
else:
out_file.write('file_1.xml')
答案 1 :(得分:2)
使用xmlunit的常规:
@Grab(group='xmlunit', module='xmlunit', version='1.6')
import org.custommonkey.xmlunit.XMLUnit
XMLUnit.setIgnoreWhitespace(true)
def r1 = new File('/11/1.xml').newReader("UTF-8")
def r2 = new File('/11/2.xml').newReader("UTF-8")
def diff = XMLUnit.compareXML(r1, r2)
assert diff.similar()
答案 2 :(得分:1)
对于Java而言
public static void main(String[] args) throws IOException {
File file1 = new File("aaa.xml");
File file2 = new File("bbb.xml");
boolean areTwoFilesEqual = FileUtils.contentEquals(file1, file2);
System.out.println("Two files are equal?" + areTwoFilesEqual);
}
使用Apache Commons IO API可以解决问题。
答案 3 :(得分:0)
您可以使用TreeOps可视工具https://github.com/treeops/treeops比较两个XML文件。它以XML / JSON / CSV格式转换和比较树数据。 用户可以通过比较选择要忽略的路径。
TreeOps定义了一组数据树转换,以简化典型的数据操作: