Java: декодирование ссылок на символы SAXParser - PullRequest
0 голосов
/ 03 октября 2010

Со ссылкой на этот вопрос Java: разделение большого XML-файла с помощью SAXParser По сути, я читаю в XML-файл, используя SAXParser, и отображаю его в другом файле.

Моя проблема в том, что содержимое моего входного файла содержит ссылки на символы, которые декодируются при чтении. Как я могу остановить это? Я хочу выписать необработанные символы без расшифровки ссылок.

(я не могу привести пример, поскольку они декодируются на странице!)

Ответы [ 2 ]

1 голос
/ 03 октября 2010

Я не думаю, что вы можете сделать это с SAX. Однако вы можете указать анализатору StAX (в отличие от SAX) не декодировать символьные объекты при разборе ( см. Этот предыдущий ответ ). Вы должны быть в состоянии отобразить их в вывод в том же формате, в котором их читает парсер.

StAX должен работать так же хорошо, как SAX.

1 голос
/ 03 октября 2010

dom4j '* Класс XMLWriter перекодирует эти символы. Например этот код:

XMLWriter writer = new XMLWriter(System.out);
writer.startElement(null, null, "example", new AttributesImpl());
writer.write(">");
writer.endElement(null, null, "example");
writer.flush();

будет выдавать этот вывод:

<example>&gt;</example>
...