星空网 > 软件开发 > Java

XML及PullParser解析

一.什么是1、概念:extensive markup language(可扩展的标记语言)
  
2、
  对
3、
  DOM(document object model  :文档对象模型):借助文档树模型对
  SAX(simple API for
  PULL:利用事件流模型来解析
  备注:DOM和SAX解析的优劣分析:DOM是将文档一次性读入到内存,然后以文档树模进行分析节点信息。获取到希望获取的数据;而SAX是事件流的形式去分析
4、
  每一个
  

二、DOM解析1、核心类:
DocumentBuilderFactory
DocumentBuilder
Doucment
Element
NodeList
Node
 
2、核心代码:
  DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  // 使用工厂来实例化一个构造Document的对象            DocumentBuilder builder = factory.newDocumentBuilder(); // 利用DocumentBuilder来构造一个Document对象  Document document = builder.parse(filename); // 获取Document文档的根节点对象  Element root = document.getDocumentElement(); // 通过根节点,获取到根节点下面的所有二级子节点  NodeList nodeList = root.getChildNodes();   // 遍历子节点,获取内部的每一个节点  for (int i = 0; i < nodeList.getLength(); i++) {  Node node = nodeList.item(i);        // 获取每个末端阶段的文本值和节点名称,将其存入到Map对象中        map.put(item.getNodeName(), item.getTextContent());   list.add(map);  }



 三、PULL解析1、核心类:
2、核心代码:
 1 // 实例化一个 2   3 // 实例化一个 4  factory.newPullParser(); 5 // 将 6 BufferedInputStream bis = new BufferedInputStream( 7 new FileInputStream("customers.)); 8  9 // 10 pullParser.setInput(bis, "utf-8");11 12 int event = pullParser.getEventType();13 List<Map<String, Object>> list = null;14 Map<String, Object> map = null;15 16 while (event != 17 switch (event) {18 case 19 list = new ArrayList<>();20 break;21 case 22 if ("customer".equals(pullParser.getName())) {23 map = new HashMap<String, Object>();24 }25 if (pullParser.getName().equals("name")) {26 map.put("name", pullParser.nextText());27 }28 if (pullParser.getName().equals("tel")) {29 map.put("tel", pullParser.nextText());30 }31 // if (pullParser.getName().equals("email")) {32 // map.put("email", pullParser.nextText());33 // }34 break;35 case 36 if (pullParser.getName().equals("customer")) {37 list.add(map);38 }39 break;40 }41 event = pullParser.next();42 }

 


3、pull解析方式和dom解析的区别:
pull解析中使用了switch case,所以可以获取客户希望获取到的内容,而不用对整个 
4、pull parser的使用:(简单易用)
只有一个关键方法key(),用于检索下一个事件,只有五个事件类型。

四、DOM TREE结构中对节点的分类

1、文档节点
2、元素节点
3、属性节点
4、文本节点
5、注释节点

五、PULL PARSER中的几种event值:

1、START_DOCUMENT: 0
2、END_DOCUMENT: 1
3、START_TAG: 2
4、END_TAG: 3
5、TEXT: 4






原标题:XML及PullParser解析

关键词:xml

xml
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

货代常说的FAK是指什么?有何特点?:https://www.goluckyvip.com/news/131148.html
与所有卖家相关!泰国正计划调整1500泰铢以下进口商品税收豁免政策;印尼科技巨头GoTo否认合并;菲律宾卖家注意:该做法违规:https://www.goluckyvip.com/news/131149.html
干货!!Tiktok中东MCN TAP正式启动:https://www.goluckyvip.com/news/131150.html
爆!Tiktok中东跨境/本土MCN TAP开启了:https://www.goluckyvip.com/news/131151.html
TikTok Shop拟于2024年开通八大新站点!:https://www.goluckyvip.com/news/131152.html
TiktokShop跨境店入驻教程 :https://www.goluckyvip.com/news/131153.html
武陵山大裂谷周围景点 武陵山大裂谷周围景点图片:https://www.vstour.cn/a/411233.html
南美旅游报价(探索南美洲的旅行费用):https://www.vstour.cn/a/411234.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流