pull解析器:
* 反序列化:将xml中的数据取出
1.导入jar包
2.创建解析器工厂
3.获取解析器
4.设置输入流,关联了目标文件
5.解析
* 反序列化:将xml中的数据取出
1.导入jar包
2.创建解析器工厂
3.获取解析器
4.设置输入流,关联了目标文件
5.解析
1 import java.io.FileInputStream; 2 import java.io.FileNotFoundException; 3 4 import org.xmlpull.v1.XmlPullParser; 5 import org.xmlpull.v1.XmlPullParserException; 6 import org.xmlpull.v1.XmlPullParserFactory; 7 8 /** 9 * 演示 pull解析的基本步骤 10 * 11 * @author rongsnow 12 * 13 */ 14 public class PullDemo1 { 15 16 public static void main(String[] args) throws Exception { 17 // 1.导入jar包 kxml2-2.3.0.jar xmlpull_1_1_3_4c.jar 18 // 2.创建解析器工厂 19 XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); 20 // 3.获取解析器 21 XmlPullParser parser = factory.newPullParser(); 22 // 4.设置输入流 参数1 字节输入流, 参数2 编码格式 23 parser.setInput(new FileInputStream("student.xml"), "gbk");////student.xml .xml文件 24 // 5.解析 25 26 // 5.1获取事件类型 27 int type = parser.getEventType(); 28 29 /* 30 * System.out.println(XmlPullParser.START_DOCUMENT); 31 * System.out.println(type) 32 */; 33 // 循环解析,直到文档结束时,循环结束 34 while (type != XmlPullParser.END_DOCUMENT) { 35 System.out.println(type); 36 37 //判断事件类型,做出不同的操作 38 switch (type) { 39 case XmlPullParser.START_TAG: 40 System.out.println("开始标签"+parser.getName()); 41 break; 42 case XmlPullParser.END_TAG: 43 System.out.println("结束标签"+parser.getName()); 44 break; 45 default: 46 break; 47 } 48 49 // 5.2向下移动一行 50 parser.next(); 51 type = parser.getEventType(); 52 } 53 } 54 55 }