2015-04-18 3 views
1

У меня возникла ситуация, когда я получаю строковое представление XML, и я бы хотел проанализировать его с помощью синтаксического анализатора SAX.Java SAX-анализ XML-строки

Я знаю, что есть способ использовать построитель документов, чтобы получить документ DOM и проанализировать его с помощью DOM-парсера, но я бы хотел проанализировать его с помощью SAX.

Я не хочу сохранять его в файл и читать его с помощью анализатора SAX, если только это не единственный вариант.

Что делать в этой ситуации?

ответ

3

Использование SAXParser.parse(InputSource is, DefaultHandler dh) где

InputSource is = new InputSource(new StringReader(str)); 
+0

как бы метод, который получает строку в качестве аргумента выглядеть? что будет анализировать возвращение? можете ли вы отредактировать и написать его как метод? – theexplorer

+0

что-то вроде: 'public static Document loadXML (String xml) throws Exception { DocumentBuilderFactory fctr = DocumentBuilderFactory.newInstance(); DocumentBuilder bldr = fctr.newDocumentBuilder(); InputSource insrc = new InputSource (новый StringReader (xml)); return bldr.parse (insrc); } ' – theexplorer

+0

см. Здесь https://docs.oracle.com/javase/tutorial/jaxp/sax/parsing.html –