Чтение большого XML-файла с помощью stax и dom

Мне нужно прочитать несколько больших (200–500 МБ) XML-файлов, поэтому я хочу использовать StaX. В моей системе два модуля: один для чтения файла (с помощью StaX); другой модуль (модуль «синтаксический анализатор») предполагает получить одну запись этого XML и проанализировать ее с помощью DOM. Мои файлы XML не имеют определенной структуры, поэтому я не могу использовать JaxB. Как я могу передать модулю «синтаксический анализатор» конкретную запись, которую я хочу, чтобы он проанализировал? Например:

<Items>
   <Item>
        <name> .... </name>
        <price> ... </price>
   </Item>
   <Item>
        <name> .... </name>
        <price> ... </price>
   </Item>
</Items>

Я хочу использовать StaX для анализа этого файла, но каждая запись «item» будет передана модулю «parser».

Редактировать:
После небольшого чтения - я думаю, мне нужна библиотека, которая читает XML-файл с помощью потока - но анализирует каждую запись с помощью DOM. Есть такая штука?

11
задан Noam 21 February 2012 в 15:52
поделиться