PUll解析

来源:互联网 发布:java 集合框架 编辑:程序博客网 时间:2024/06/05 19:59
  • PUll解析
package com.example.xmlpullparsedemo;import java.io.IOException;import java.util.ArrayList;import org.xmlpull.v1.XmlPullParser;import org.xmlpull.v1.XmlPullParserException;import org.xmlpull.v1.XmlPullParserFactory;import com.example.xmlpullparsedemo.bean.Language;import android.os.Bundle;import android.app.Activity;import android.util.Log;import android.view.Menu;import android.widget.TextView;public class MainActivity extends Activity {    private static final String TAG = "MainActivity";    private TextView textView;    private ArrayList<Language> languageList;    private Language language;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        textView = (TextView) findViewById(R.id.textView);        pullXMLParse();        for (Language language : languageList) {            textView.append(language.toString()+"\n");        }    }    private void pullXMLParse() {        try {            //获取            XmlPullParserFactory factory = XmlPullParserFactory.newInstance();            XmlPullParser pullParser = factory.newPullParser();            pullParser.setInput(getAssets().open("language.xml"), "utf-8");            int type = pullParser.getEventType();            while (type != XmlPullParser.END_DOCUMENT) {                String name = pullParser.getName();                switch (type) {                case XmlPullParser.START_DOCUMENT:                    languageList = new ArrayList<Language>();                    break;                case XmlPullParser.START_TAG:                    if ("item".equals(name)) {                        language = new Language();                        String id = pullParser.getAttributeValue(0);                        language.setId(id);                    } else if ("name".equals(name)) {                        language.setName(pullParser.nextText());                    } else if ("ide".equals(name)) {                        language.setIde(pullParser.nextText());                    }                    break;                case XmlPullParser.END_TAG:                    if ("item".equals(name)) {                        languageList.add(language);                    }                     break;                default:                    break;                }                type=pullParser.next();            }        } catch (XmlPullParserException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }}
0 0
原创粉丝点击