我需要将一个XML文档编码成一个字符串格式,以便通过XML解析器(即去掉标签)进行传递。然后我需要再次解码它,并且我需要在Android上完成这个过程。我需要查找的是Android API中的哪个库/类?
谢谢
我需要将一个XML文档编码成一个字符串格式,以便通过XML解析器(即去掉标签)进行传递。然后我需要再次解码它,并且我需要在Android上完成这个过程。我需要查找的是Android API中的哪个库/类?
谢谢
XmlSerializer
。使用它来构建“外部”XML文档;您可以将一个完整的XML字符串传递给它的text(...)
方法,它会为您进行转义。如果您真的想要构建DOM树,然后将其转储为XML,您可以使用DOM API执行相同类型的操作,通过使用setTextContent方法。XmlSerializer xs = Xml.newSerializer();
StringWriter sw = new StringWriter();
xs.setOutput(sw);
xs.startDocument(null, null);
xs.startTag(null, "foo");
xs.text("<bar>this is some complete XML document you had around before</bar>");
xs.endTag(null, "foo");
xs.endDocument();
Log.v("XMLTest", "Generated XML = " + sw.toString());
String encoded = URLEncoder.encode(xml);
这个问题是我在搜索解决方案时的首要结果,所以我在这里回答
Html.fromHtml(String)
通常情况下,Java XML解析器是首选。
如果必须手动构建,则可以使用XmlSerializer
编辑:
这里有一篇关于在Android上处理xml的文章,但它也使用了XmlSerializer进行编写。