Изменить узел XML, но сохранить формат файла XML без изменений - PullRequest
6 голосов
/ 23 марта 2010

Как я могу изменить файл XML без каких-либо изменений, таких как упорядочение атрибутов, расширение тегов и кодировка? (Я предпочитаю DOM API)

Ответы [ 3 ]

5 голосов
/ 23 марта 2010

Вы можете попробовать VTD-XML .

Поскольку эта библиотека создает индекс, сохраняя содержимое файла как есть, ее API-интерфейс манипуляции позволит «исправлять» ваш файл, оставляя остальные нетронутыми.

Использование API VTD-XMLвы сможете перемещаться по своему XML как дерево DOM (даже используя XPath) и делать некоторые изменения (вставлять элементы, вставлять атрибуты и т. д.)

2 голосов
/ 03 ноября 2014

Один хороший вариант будет использовать decentxml.Я успешно использовал его ранее для программного изменения нескольких атрибутов рукописного конфигурационного XML-файла без потери форматирования.Но это не DOM.

0 голосов
/ 23 марта 2010

Это невозможно с DOM, поскольку DOM не знает порядок атрибутов.

Вы можете использовать низкоуровневый API, такой как StAX, javax.xml.stream, но использовать StAX не совсем удобно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...