//利用XmlPullParser
package com.example.jupeizhong.news;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
import java.io.IOException;
import java.io.StringReader;
/**
* Created by jupeizhong on 2016/5/1.
*/
public class ParseXML {
public static int len = 0;
public static String items[] = new String[100];
public static String urls[] = new String[100];
public static void rss_innovation (String feed)
throws XmlPullParserException, IOException
{
len = 0;
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
boolean flag = false;
String rec_tag = "";
xpp.setInput( new StringReader( feed ) );
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
/*
if(eventType == XmlPullParser.START_DOCUMENT) {
Log.v("debug","Start document");
} else if(eventType == XmlPullParser.START_TAG) {
Log.v("debug","Start tag "+xpp.getName());
} else if(eventType == XmlPullParser.END_TAG) {
Log.v("debug","End tag "+xpp.getName());
} else if(eventType == XmlPullParser.TEXT) {
Log.v("debug","Text "+xpp.getText());
}
eventType = xpp.next();
*/
if (eventType == XmlPullParser.START_TAG) {
rec_tag = xpp.getName();
if (rec_tag.equals("item")) {
flag = true;
}
} else if (eventType == XmlPullParser.TEXT) {
if (flag) {
if (rec_tag.equals("title")) {
items[len] = xpp.getText();
rec_tag = "";
}else if (rec_tag.equals("link")) {
urls[len] = xpp.getText();
rec_tag = "";
}
}
}else if(eventType == XmlPullParser.END_TAG) {
if (xpp.getName().equals("item")){
++len;
flag = false;
}
}
eventType = xpp.next();
}
//Log.v("debug","End document");
}
}