Java: синтаксический анализ и запись XML-файлов - PullRequest
0 голосов
/ 24 марта 2011

Мне нужно проанализировать XML-документ с Java и вывести другой XML-документ.

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

я должен использовать любую библиотеку Java для этого?

спасибо

Ответы [ 5 ]

1 голос
/ 24 марта 2011

Анализ XML и запись в другой документ XML лучше всего выполнять с помощью JDOM. Тем не менее, группировка и усреднение будет болезненным с JDOM.

Вы также можете использовать JAXB для создания POJO из xml, затем выполнить усреднение и группировку на POJO, а затем перенаправить его с JAXB обратно в XML.

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

0 голосов
/ 24 марта 2011

Взгляните на Xstream

0 голосов
/ 24 марта 2011

Вам нужно использовать парсеры DOM или SAX для разбора XML-документов с использованием Java.

Java API для обработки XML (JAXP) - это один из API-интерфейсов программирования Java XML.Он предоставляет возможность проверки и анализа XML-документов.

Но было бы лучше, если вы перейдете по этим ссылкам, прежде чем принять решение о правильном подходе.

Запутались в DOMили SAX?
Посетите здесь: Должен ли я использовать DOM или SAX

Кроме того, рекомендуется прочитать JAXB

0 голосов
/ 24 марта 2011

Вы можете использовать DOM или SAX для анализа XML-файла. DOM позволяет вам переходить к каждому элементу XML, в то время как SAX основан на событиях, которые анализатор генерирует при анализе файла. С DOM обычно легче работать, однако, поскольку он загружает весь XML-файл в память, он не будет работать с большими файлами, и в этом случае вам лучше использовать SAX. Вы можете найти оба анализатора в пакете javax.xml.parsers. Вы можете найти несколько примеров для обоих парсеров здесь http://java.sun.com/developer/codesamples/xml.html

0 голосов
/ 24 марта 2011

Лучший способ - использовать библиотеку. Выполнение этого без библиотеки означает, что вам придется писать код для разбора и создания вашего xml сложного пути. Я предлагаю вам использовать JDom . Вот список библиотеки Java XMl: http://java -source.net / open-source / xml-parsers

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