Существуют ли какие-либо бесплатные инструменты XML Diff/Merge? [закрытый]


У меня есть несколько конфигурационных файлов в моих приложениях .net, которые я хотел бы объединить элементы настроек приложения и т. д.

Я собирался начать делать это вручную, как я обычно делаю, однако думал, что где-то должен быть инструмент графического интерфейса XML diff.

инструмент сможет перейти на уровень элемента для сравнения и отображения различий и т. д.

однако Google не дал никаких существенных результатов бесплатного инструмента и никаких намеков на что-либо из значение.

доступен ли такой инструмент? Это очень полезно? Бесплатно?

спасибо заранее. :)

Edit:

вот немного разъяснения функциональности, которая превратит мою подверженную ошибкам, утомительную ручную работу в 1-минутную более простую задачу (и потенциально автоматизированную):

в KDiff3, вы можете сделать diff/слияние целых каталогов. Существует иерархическая разница, которая очень точна, удобна и понятна. Мне было интересно поиск аналогичного решения, однако вместо иерархии каталогов, иерархия элементов XML.

Если такого программного обеспечения с открытым исходным кодом нет, я рассматриваю возможность его создания на CodePlex для обеспечения этой функции.

11 91

11 ответов:

KDiff3 не является специфичным XML, но это бесплатно. Это делает хорошую работу по сравнению и объединению текстовых файлов.

взгляните на at инструменты сравнения файлов, из которого я использую WinMerge. Он имеет возможность сравнивать XML-документы (вы можете включить DisplayXMLFiles предварительный фильтр).

DisplayXMLFiles.dll - этот плагин довольно-печатает XML-файлы красиво, вставляя вкладки и разрывы строк. Это полезно для XML-файлов, которые не имеют возврата строки в удобных местах.

WinMerge in action

EDIT: Обновлено ссылка на мой таблица сравнения функций.

Я понимаю, что эта тема немного устарела, и я уверен, что вы уже нашли решение, но для будущих читателей я написал и выпустил приложение для Windows, которое специально решает проблему сравнения и слияния XML-файлов.

Слияние может выполнять два и три способа сравнения и слияния любого XML-файла (где два файла считаются независимыми версиями общего базового файла). Вы можете поручить ему идентифицировать элементы внутри входные файлы по значениям атрибутов или содержимому дочерних элементов, среди прочего.

Он полностью управляется с помощью командной строки, а также может генерировать текстовые отчеты, содержащие различия между файлами.

Project: Merge merging three XML files

здесь перечислены несколько Java-инструментов XML diff и merge:

Open Source XML Diff написано на Java

добавлены ссылки:

хотя это не инструмент GUI, мои быстрые тесты показали, что diffxml есть какое-то обещание. Автор, по - видимому, думал о сложностях представления различий для вложенных элементов стандартизированным способом (его спецификация языка обновления DUL-Delta).

установив и запустив свои инструменты, я могу сказать, что вывод сырого текста довольно ясен и лаконичен. Он не предлагает такой же степени немедленного восприятия, как инструмент GUI, но учитывая, что выход стандартизирован как DUL, возможно, вы сможете взять это и построить инструмент для создания визуального представления. Я, конечно, люблю, чтобы увидеть один.

раздел "ссылки" автора ссылается на несколько других инструментов разности XML, но, как вы упомянули в своем посте, все они являются собственностью.

Я использую TortoiseMerge, который входит в TortoiseSVN программа

и мы говорили о инструментах File Diff в этом потоке, не посвященных XML, хотя

https://stackoverflow.com/questions/1830962/file-differencing-software-on-windows

довольно Diff инструмент был создан с XML в виду. Просто убедитесь, что вы выбрали опцию "разметка".

http://prettydiff.com/

A7Soft предоставляет бесплатные и условно-бесплатные инструменты сравнения XML:

http://www.a7soft.com

DiffDog Altova имеет бесплатную 30-дневную пробную версию и должен делать то, что вы ищете:

http://www.altova.com/diffdog/diff-merge-tool.html

это движок diff для разработчиков java, но он поставляется с демонстрационным интерфейсом - вы можете использовать его:https://community.emc.com/docs/DOC-5042