- xml解析最常见的是DOM解析:DOM解析是整个XML文档作为一个对象来处理,程序会先把这个文档读入到内存里。解析是基于树的结构,然后加载整文档,构造DOM树,才解析字符串。
- 优点:解析的时候把字符串放到了内存中,因此可以对xml文档随机访问、修改操作。dom使用很简单。
- 缺点:整个文档必须一次性解析完,由于整个文档都需要载入内存,对于大文档成本高。
- 用法:一般是获取到Document对象,然后在获取Element对象,根据element对象按照数的结构进行解析。
- 另外一种解析格式是Sax解析:这是一种以事件驱动的Xml API。自顶向下依次解析,属于边扫描边解析。
- 优点:由于边扫描边解析,解析XML速度快,占用内存少。
- 缺点:不能知道当前解析节点的上层节点以及上层节点的嵌套结构,仅仅知道当前解析节点的名字和属性,不能修改XML,不能随机访问某个节点。
- 用法:获取到一个SAXParser对象,然后调用器方法。
JSON解析用的最频繁的应该是阿里的fastjson这个包和net.sf这个包。导入的json包可以直接对字符串进行解析,只需要创建一个JSONobject对象即可。
json的好处:JSON对于移动设备来说,尤其对于网络环境较差和流量限制的情况下,相对于XML格式的数据传输会更节省流量,传输效率更高。