【发布时间】:2014-10-29 12:21:09
【问题描述】:
我正在尝试解析一个简单的 XML 文件。如果我有以下 XML 字符串,
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
我只想从<body>...</body> 中提取字符串。我正在使用 SAXParser 和一个默认处理程序。通过在 DefaultHandler 的“characters”方法中显式添加打印语句,我成功打印出标签中的所有字符串。但我不确定在哪里调用这个字符方法,以及如何控制它。
我知道如何在 startElement 中发现某个标签,但是如何从 startElement 中的标签中提取字符串?
【问题讨论】:
-
DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder();文档 doc = db.parse(new ByteArrayInputStream(xml.getBytes())); String bodyText = doc.getElementsByTagName("body").item(0).getTextContent();
-
尝试使用 DOM 解析器。在这种情况下更容易。