android开发过程会经常使用XML文件,下面提供小实例,看看XmlResourceParser类是怎么样解析XML文件的。
在res目录中创建一个xml目录,然后在xml目录中创建一个student.xml文件
Student.xml
<person> <student name="olay" id="1" age="21" sex="男"> </student> <student name="qiu" id="1" age="21" sex="女"> </student> <student name="james" id="1" age="21" sex="男"> </student> <student name="kobe" id="1" age="21" sex="男"> </student> </person>
在Activity程序中
package com.example.xml; import java.io.IOException; import org.xmlpull.v1.XmlPullParserException; import android.os.Bundle; import android.app.Activity; import android.content.res.XmlResourceParser; import android.view.Menu; import android.widget.TextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); XmlResourceParser xml =getResources().getXml(R.xml.student); //获取xml文档 StringBuffer sb = new StringBuffer(); TextView tx=(TextView) findViewById(R.id.text); try { while(xml.getEventType()!=XmlResourceParser.END_DOCUMENT){ //如果没有到XML文档结尾处就循环 if(xml.getEventType()==XmlResourceParser.START_TAG){//判断是否为开始标记 String tagName=xml.getName(); //获取标记名 if(tagName.equals("student")){ //判断标记名是否为student sb.append("姓名:"+xml.getAttributeValue(0)+" "); sb.append("学号:"+xml.getAttributeValue(1)+" "); sb.append("年龄:"+xml.getAttributeValue(2)+" "); sb.append("性别:"+xml.getAttributeValue(3)); sb.append("\n"); } } xml.next(); //标记下一个 } tx.setText(sb.toString()); } catch (XmlPullParserException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
原文链接:https://www.f2er.com/xml/299604.html