Как читать XML-файл, используя Java? - PullRequest
2 голосов
/ 30 июня 2009

Мне нужно прочитать файл XML, используя Java. Его содержимое что-то вроде

<ReadingFile>
    <csvFile>
        <fileName>C:/Input.csv</fileName>
        <delimiter>COMMA</delimiter>
        <tableFieldNamesList>COMPANYNAME|PRODUCTNAME|PRICE</tableFieldNamesList>
        <fieldProcessorDescriptorSize>20|20|20</fieldProcessorDescriptorSize>
        <fieldName>company_name|product_name|price</fieldName>
    </csvFile>
</ReadingFile>

Существуют ли специальные читатели / JAR-файлы или мы должны читать, используя FileInputStream ?

Ответы [ 6 ]

4 голосов
/ 30 июня 2009

Ознакомьтесь с API Java JAXP , которые входят в стандартную комплектацию. Вы можете прочитать XML из файла в DOM (объектную модель) или как SAX - последовательность событий (ваш код будет получать событие для каждого начала элемента, конца элемента и т. Д.). Как для DOM, так и для SAX я бы посмотрел руководство по API, чтобы начать.

В качестве альтернативы вы можете найти JDOM более простым / интуитивно понятным в использовании.

1 голос
/ 30 июня 2009

Еще одно предложение: попробуйте Commons Digester. Это позволяет очень быстро разрабатывать код анализа с использованием подхода, основанного на правилах. Здесь есть учебник здесь и библиотека доступна здесь

Я также согласен с Брайаном и Альзоидом в том, что JAXB - это отличная возможность быстро запустить вас. Вы можете использовать компилятор связывания xjc, который поставляется вместе с JDK, для автоматической генерации ваших классов Java с использованием схемы XML.

0 голосов
/ 30 июня 2009

JAXB - еще одна технология, которая может удовлетворить ваши потребности.

0 голосов
/ 30 июня 2009

Существует два основных способа анализа XML с помощью Java. Первый - использовать SAX-парсер , см. Здесь

что довольно просто.

Второй вариант - использовать DOM-парсер см. Здесь

, что более сложно, но дает вам больше контроля.

0 голосов
/ 30 июня 2009

Вы можете использовать внешние библиотеки, такие как Кастор https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-1046622.html Я использовал касторовое в прошлом. Вот несколько других ссылок, которые могут помочь. http://www.xml -training-guide.com / е-xml27.html

http://java.sun.com/j2se/1.4.2/docs/api/org/xml/sax/XMLReader.html http://www.cafeconleche.org/books/xmljava/chapters/ch07.html

0 голосов
/ 30 июня 2009

xstream будет очень хорошо здесь. Ознакомьтесь с одностраничным учебником

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