Я хочу убедиться, что 2 файла XML одинаковы, и 2 варианта, которые я вижу. 1. Получите XML, чтобы иметь дату последнего изменения со временем, и убедитесь, что это то же самое. Проблема в том, что кто-то может забыть ее изменить, а затем бесполезно. 2. Создайте хэш-код файла/структуры xml.Как проверить изменения в XML-файле?
Я использую сборки в библиотеке в Java, но реализация хэша может меняться от запуска к запуску, который не является полезным
File model = new File(fileLocation);
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(model);
doc.getHash();
есть простой способ сделать это, и, надеюсь, не импортируя другую библиотеку.
Я могу прочитать разные вопросы из этого: Eith вы хотите проверить, отличается ли * содержимое * файла * (тогда просто хэш-файл), или вы хотите проверить, изменилась ли фактическая структура XML (так что замена порядка к элементам не может привести к разнице). Который из них? –
В моем приложении, которое использует «хеширование XML», я использую хэш (используя поток) по DOM в определенном порядке, то есть я сортирую элементы по алфавиту и спускаюсь по глубине, и для каждого элемента я сортирую значения по алфавиту. Это работает для меня (TM). – 2013-03-06 08:48:15
Я думаю, что первый выбор, если оба файла идентичны. Во-вторых, было бы здорово, но я думаю, что это слишком сложно и в моем случае не нужно. – Juan