Я пытаюсь разобрать гигантский (> 1 ГБ) xml-файл с помощью Java XMLStreamReader. Я использую метод getText() для извлечения содержимого узла. Файл xml, который у меня есть, закодирован как ISO-8859-1, а некоторые символы имеют специальную кодировку, например, &
закодирован как &
в файле.
Итак, если файл содержит, например:
<person>Jack</person>
<person>Jill</person>
<persons>Jack & Jill</persons>
И я пытаюсь получить содержимое каждого узла с помощью getText(), 3-й узел возвращает только Jack
. Каждый раз, когда встречается символ &xxx;
, никакие символы после него (в том же узле) не анализируются и не возвращаются.
В чем проблема? XML-файл закодирован правильно? Правильно ли я использую парсер Java?
Спасибо!