1

我正在尝试使用 DOM 解析 XML 提要。当一个节点看起来像这样时:

<title>&#039;Star Wars&#039; May the force live</title>

返回的 XML 只是 ' 然后解析器继续到下一个节点。

这是我解析它的方式:

NodeList list = node.getChildNodes();
    for (int j=0; j<list.getLength(); j++) {
        Node innerItem = list.item(j);
        String name = innerItem.getNodeName();

        if (name.equalsIgnoreCase("title")) {
            vo.setTitle(innerItem.getFirstChild().getNodeValue());
        }
    }

我怎样才能解决这个问题?该代码在 Android 4 中解析良好,但在 Android 2.3.3 中失败

4

1 回答 1

2

看起来你的问题与这个问题非常相似:android 解码 html in xml file

似乎 HTML 字符会破坏 DOM 解析器,因此无法从 xml 实体中获取字符串。有一个 HTML 函数可以解析字符串中的 HTML。

TextView tv;
String s = "<quote>&#039;Star Wars&#039; May the force live</quote>";
tv.setText(HTML.fromHtml(s));

输出:

"Star Wars" May the force live

但是似乎 DOM 没有得到要转换的字符串,所以下面的文章可能有用:Using XPATH and HTML Cleaner to parse HTML/XML

于 2012-08-17T04:22:48.200 回答