关于xml解析:如何解析android中的本地XML数据?

How to parse local XML data in android?

我喜欢这个XML字符串

1
<?xml version='1.0' encoding='UTF-8'?><errors><error><domain>yt:quota</domain><wyn>too_many_recent_calls</wyn></error></errors>

此XML不在文件中。它在字符串中那我该怎么分析它呢?

当做,吉里什


您可以使用android的saxparser来解析这个字符串。分析器的XmlReader所需的输入源需要输入流,因此必须将字符串转换为输入流。您可以使用bytearrayinputstream进行此操作:

1
InputStream is = new ByteArrayInputStream( myString.getBytes( charset ) );

参见:如何将字符串转换成Java中的输入流读取器?

http://developer.android.com/reference/javax/xml/parsers/saxparser.html


使用bytearrayinputstream将字符串转换为inputstream:

1
2
3
4
String xml ="valid xml here";
InputStream is = new ByteArrayInputStream(xml.getBytes("UTF-8"));

dom = builder.parse(is);

检查下面的链接

使用SAX分析XML字符串