使用自定义的XML资源,这当然也必须是Android的一个功能,Java开发者可以使用DOM,SAX等多种方式,Android内建了Pull来解析XML
那么我个人觉得在Android中还是使用它的内建解析方法比较好,使用其它方式还要下载它们的Jar包,还是挺麻烦的.
这个是MainActivity的一个Button
final TextView tv = (TextView) this.findViewById(R.id.tv);
Button btn = (Button) this.findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
StringBuilder sb = new StringBuilder("");
Resources r = getResources();
XmlResourceParser xrp = r.getXml(R.xml.person_xml);
try {
while (xrp.getEventType() != XmlResourceParser.END_DOCUMENT) {
if (xrp.getEventType() == XmlResourceParser.START_TAG) {
String name = xrp.getName();
if ("person".equals(name)) {
sb.append(xrp.getAttributeValue(0));
sb.append(" ");
sb.append(xrp.getAttributeValue(1));
sb.append(" ");
sb.append(xrp.getAttributeValue(2));
sb.append(" ");
sb.append("\n");
}
}
xrp.next();
tv.setText(sb.toString());
}
} catch (XmlPullParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}
}) ;
这个是/res/xml/person.xml
<?xml version="1.0" encoding="utf-8" ?>
<persons>
<person name="kem" age="30" gender="male" />
<person name="agel" age="20" gender="male" />
</persons>
运行之后在textview中显示xml中的数据。
注意哦,用其它的方法建立xml文件会出错。建立person.xml的时候,在eclipse中要-->new-->file-->文件名person.xml ,注意加.xml