又是一个问题。这次我正在解析从服务器接收到的 XML 消息。有人认为自己很聪明,决定将 HTML 页面放在 XML 消息中。现在我有点面临问题,因为我想从这个 XML 消息中提取那个 HTML 页面作为字符串。
好的,这是我正在解析的 XML 消息:
<AmigoRequest>
<From></From>
<To></To>
<MessageType>showMessage</MessageType>
<Param0>general message</Param0>
<Param1><html><head>test</head><body>Testhtml</body></html></Param1>
</AmigoRequest>
您会看到在 Param1 中指定了一个 HTML 页面。我尝试通过以下方式提取消息:
公共字符串 getParam1(文档 d){ if (d.getDocumentElement().getTagName().equals("AmigoRequest")) { NodeList 结果 = d.getElementsByTagName("Param1"); // 消息类型取决于我们正在阅读的消息。 if (results.getLength() > 0 && results != null) { 返回结果.item(0).getFirstChild().getNodeValue(); } } 返回 ””; }
其中 d 是文档形式的 XML 消息。它总是返回一个空值,因为 getNodeValue() 返回空值。当我尝试 results.item(0).getFirstChild().hasChildNodes() 时,它会返回 true,因为他看到消息中有一个标签。
如何<html><head>test</head><body>Testhtml</body></html>
从字符串中的 Param0 中提取 html 消息?
我正在使用 Android sdk 1.5(几乎是 java)和 DOM Parser。
感谢您的时间和回复。
安泰克