Я хочу использовать Java для сравнения двух XML-файлов.Я хочу знать разницу между ними и тем, что было добавлено / удалено из версии 1 в версию 2. Мне также важно, где что-то было добавлено или удалено.
Я не эксперт по программированию, поэтому мойПервая попытка состояла в том, чтобы использовать XMLUnit-Legacy, но решение было не таким уж хорошим.С этой библиотекой я получаю различия, но дело в том, что она не может точно сказать, что было добавлено или удалено.Он сравнивает две строки строка за строкой, но я хочу получить DOM-представление xml-файла и работать над ним.
Вот мой код, чтобы вы могли понять, что я сделал,far:
String content1 = new String(Files.readAllBytes(Paths.get("twoSubTwoClone.xml")));
String content2 = new String(Files.readAllBytes(Paths.get("twoSubTwoClone2.xml")));
Diff diff;
try {
diff = new Diff(content1, content2);
DetailedDiff myDiff = new DetailedDiff(diff);
List allDifferences = myDiff.getAllDifferences();
for (int i = 0; i < allDifferences.size(); i++) {
System.out.println(allDifferences.get(i));
}
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
А потом я искал больше библиотек и нашел это: https://docs.oracle.com/database/121/ADXDK/adx_j_diff.htm#ADXDK129 ... что действительно многообещающе.Но я не знаю, как его использовать .. Нет никакого примера.
Так что мой вопрос:
Кто-нибудь уже работал с XmlUtils?и можете сказать мне, что я должен программировать шаг за шагом?- Я знаю, это звучит глупо, но сейчас я действительно отчаялся, как его использовать.
Есть ли еще способы достичь цели?- Другие библиотеки с примерами предоставлены?
Я хочу поблагодарить вас, ребята, заранее.