-
4种解析方式 1.基础方法 DOM (与平台无关的官方解析); SAX (基于事件驱动的解析) 2.扩展方法 (在基础方法上扩展的,只有在 java 中才能够使用的解析方法) JDOM 、 DOM4J 3.DOM:一次性加载形成DOM树;对内存性能要求较高 -优点:形成了树结构,直观好理解,代码更容易编写;解析过程中树结构保留在内存中,方便修改; -缺点:当xml文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出 4.SAX:事件驱动,对内存耗费较小;只关注数据 -优点:适用于只需要处理xml中数据; -缺点:不易编码;很难同时访问同一个xml中的多处不同数据 5.JDOM与DOM、DOM4J *JDOM: -仅使用具体类而不使用接口 -API大量使用了Collections类 *DOM4J -JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能; -DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API; -具有性能优异、灵活性好、功能强大和极端易用使用的特点 -是一个开放源代码的软件查看全部
-
DOM4J 解析 xml 文件 1、创建一个 SAXReader 对象 SAXReader saxReader = new SAXReader(); 2、将 xml 文件加载到 SAXReader 中,并获取 document 对象 Document document = saxReader.read(fileName); 3、通过 getRootElement() 获取根节点元素 Element employeeRoot = document.getRootElement(); 4、通过 elementIterator() 获取子节点元素,返回 Iterator 返回迭代器 Iterator eles = eleRoot.elementIterator(); 5、通过 while 遍历迭代器 while(eles.hasNest()){ Element ele = (Element)eles.next();} 6、获取属性节点类似 JDOM 解析 List<Attribute> attrs = ele.attributes(); 7、获取元素节点名、值 ele.getName() ele.getStringValue()/ele.getText() 8、获取属性节点名、值 ele.getName() ele.geValue()查看全部
-
XML文件用来存储数据和传输数据 XML存储结构为树状 xml声明:<?xml version="1.0"encoding="utf-8"? > XML作用: 不同应用程序之间通信、传输信息(订票程序和支付程序) 不同系统间的通信(例:Windows系统和IOS系统) 不同平台间的数据共享(手机端和PC端)查看全部
-
JDOM解析乱码处理 1.修改xml第一行的encoding属性 2.在代码中处理,应用IO流知识 //创建输入流,将XML文件加载到输入流中 InputStream in = new FileInputStream("src/book.xml"); //使用包装流InputStreamReader进行读取编码的指定 InputStreamReader isr = new InputStreamReader(in,"UTF-8");查看全部
-
JDOM解析节点属性 1、使用 foreach 遍历子元素节点时,获取第几本使用 indexOf + 1(原因:indexOf从0开始) for(Element book : booklist){ booklist.indexOf(book)+1; } 2、JDOM中的Element得到的Attribute的getValue都是有实际值的文本,getValue不保存空格换行等组成的文本查看全部
-
JDOM解析文件 1.创建一个SAXBuilder对象 SAXBuilder saxbuilder=newSAXBuilder(); 2.创建输入流,将xml文件加载到输入流中(抛出FileNotFoundException) Inputstream in=new FileInputstream("xxx.xml"); 3.通过SAXBuilder的Build方法将输入流加载到saxb中获取dom对象 Document doc = saxbuilder.build(in); 4.通过document对象获取xml文件的根结点 Element rootElement =doc.getRootElement(); 5.获取根结点下的子节点的List集合查看全部
-
XML文件用来存储数据和传输数据 XML存储结构为树状 xml声明:<?xml version="1.0"encoding="utf-8"? > XML作用: 不同应用程序之间通信、传输信息(订票程序和支付程序) 不同系统间的通信(例:Windows系统和IOS系统) 不同平台间的数据共享(手机端和PC端)查看全部
-
xml存储结构为树状 xml声明:<?xml version="1.0" encoding="utf-8"?> xml在不同程序、不同系统(Windows、IOS等)、不同平台(手机端、PC端等)之间数据共享查看全部
-
JUnit是Java提供的一种进行单元测试的自动化工具。测试方法可以写在任意类中的任意位置。使用JUnit可以没有main()入口进行测试。 DOM4J在灵活性和对复杂xml的支持上都要强于DOM DOM4J的应用范围非常的广,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。 DOM是w3c组织提供的一个官方解析方式,在一定程度上是有所应用的。 当XML文件比较大的时候,会发现DOM4J比较好用 1.JUnit:Java提供的单元测试;@Test注解;采用JUnit不需要程序入口main方法 2.性能测试结果:几kB的xml文件;建议使用DOM4J解析 DOM-33ms SAX-6ms JDOM-69ms DOM4J-45ms 工程右键build path --Add library--JUnit单元测试 --version:JUnit4 DOM:33,SAX:6 JDOM:69;DOM4J:45 DOM 有可能溢出 多使用DOM4J查看全部
-
XML文件4种解析方式: 1.基础方法: DOM:与平台无关的官方的解析方式。 SAX:Java平台提供的基于事件驱动的解析方式。 2.扩展方法(在基础的方法上扩展的,只有在Java中才能使用的解析方法): JDOM,DOM4J。 3.DOM解析:一次性加载形成DOM树,对性能要求较高 优点:形成树形结构,直观好理解,代码更容易编写;解析过程中树结构保留在内存中,方便修改; 缺点:当XML文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出 4.SAX:事件驱动,对内存耗费较小;只关注数据 -优点:适用于只需要处理xml中数据; -缺点:不易编码;很难同时访问同一个xml中的多处不同数据 5.JDOM与DOM、DOM4J *JDOM: -仅使用具体类而不使用接口 -API大量使用了Collections类 *DOM4J -JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能; -DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API; -具有性能优异、灵活性好、功能强大和极端易用使用的特点 -是一个开放源代码的软件查看全部
-
DOM4J 解析 xml 文件 1、创建一个 SAXReader 对象 SAXReader saxReader = new SAXReader(); 2、将 xml 文件加载到 SAXReader 中,并获取 document 对象 Document document = saxReader.read(fileName); 3、通过 getRootElement() 获取根节点元素 Element employeeRoot = document.getRootElement(); 4、通过 elementIterator() 获取子节点元素,返回 Iterator 返回迭代器 Iterator eles = eleRoot.elementIterator(); 5、通过 while 遍历迭代器 while(eles.hasNest()){ Element ele = (Element)eles.next();} 6、获取属性节点类似 JDOM 解析 List<Attribute> attrs = ele.attributes(); 7、获取元素节点名、值 ele.getName() ele.getStringValue()/ele.getText() 8、获取属性节点名、值 ele.getName() ele.geValue()查看全部
-
获取xml文件内容的 四种解析方式:DOM SAX DOM4J JDOM DOM使用步骤: 准备工作 1、创建一个DocumentBuilderFactory的对象 DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); 2、创建一个DocumentBuilder的对象 DocumentBuilder db=dbf.newDocumentBuilder(); 3、通过DocumentBuilder对象的parser方法加载xml文件到当前项目 Document document = db.parse("books.xml"); [ 收起全文 ]查看全部
-
Element(NodeType:1;NodeName:元素名称;NodeValue:null) Attr(NodeType:2;NodeName:属性名称;NodeValue:属性值) Text(NodeType:3;NodeName:#text;NodeValue:节点内容)查看全部
-
DOM方式解析xml步骤: 1、创建一个DocumentBuilderFactory的对象 2、创建一个DocumentBuilder对象 3、通过DocumentBuilder对象的parse(String fileName)方法解析xml文件查看全部
-
-----------------------------------JDOM 解析时乱码的处理----------------------------------- 解析XML文件出现乱码时,第一时间应该查看XML的编码属性,如果编码有问题,则自行修改后再进行解析; 如果修改XML的编码不好使,则只能在不改变XML文件的基础下,修改我们的JDOM代码 //创建输入流,将XML文件加载到输入流中 InputStream in = new FileInputStream("src/person.xml"); //使用包装流InputStreamReader进行读取编码的指定 InputStreamReader isr = new InputStreamReader(in,"UTF-8");查看全部
举报
0/150
提交
取消