为了账号安全,请及时绑定邮箱和手机立即绑定

Java眼中的XML---文件读取

难度初级
时长 3小时 0分
学习人数
综合评分9.63
323人评价 查看评价
9.9 内容实用
9.5 简洁易懂
9.5 逻辑清晰
  • DOM解析优缺点
    查看全部
  • SAX优缺点
    查看全部
  • 1. DocumentBuilderFactory bdy = DocumentBuilderFactory.newInstance();<br><br> 2.DocumentBuilder bd = bdy.newDocumentBuilder();<br> parse方法解析xml文件,并加装到当前目录下<br> 3.Document document = bd.parse("book.xml");<br>
    查看全部
  • SAX优缺点
    查看全部
  • DOM优缺点
    查看全部
  • 用SAX解析将XML解析的内容及结构形式存入Java对象 SAX解析: 1、获取一个SAXParserFactory的实例:SAXParserFactory factory = SAXParserFactory.newInstance(); 2、通过factory获取SAXParser实例:SAXParser parser = factory.newSAXParser(); 3、创建SAXParserHandler对象:SAXParserHandler handler = new SAXParserHandler(); 4、将xml文件和解析方式handler加载到SAXParser实例:parser.parse("books.xml",handler); 解析执行顺序:startElement->characters->endElement ArrayList保存对象 ArrayList<Book> BookList=new ArrayList<Book>(); BookList.add(book);book=null;后继续遍历 public void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException// qName是节点名称;attributes是节点属性;
    查看全部
  • 常用的节点类型
    查看全部
  • 常用的节点类型
    查看全部
  • 解析xml元素:<br> 1. 重写DefalutHandler的实现类对象的startElement()方法<br> 2. 在startElement()方法中,先调用DefaultHanlder 的startElement()方法<br> 3. 已知节点的属性名的情况下<br> if(qname.equals("book")){<br> String value = attributes.getValue("id");<br> }<br> 4.不知节点的属性名的情况下<br> 获取属性长度<br> int length=attributes.getLength();<br> 获取属性名和属性值 for(int i=0;i<length;i++){ System.out.print(attributes.getQname(index)+attributes.getValue(index));
    查看全部
  • SAXParserHandler类的执行顺序为:startDocument()开始Xml解析--->第一行,以后每行的执行顺序为——>startElement()---characters()--->endElemnet()---->到最后一行的<bookstore>---->endDcunment()。
    查看全部
  • 08:15 characters(char[] ch, int start, int length) 方法总结: 简单来说解析器首先在startDocument之后会读取XML中的字符串(从根节点开始一直到根节点结束)并放入ch[]字符数组中去,然后在解析到#TEXT节点(包括空格和换行符)时使用start来标记字符在ch[]数组中的起始位置,length标记长度,然后调用character方法,character方法默认不会进行任何处理,想进行处理需要重写方法。 PS:好像ch[]是保存在存储块中,而存储块是有大小的,所以有可能发生同一个#TEXT 字符存储在不同的两个存储块中,这种情况会先完成一个存储块中的start,length标记和character调用,然后再在另一个存储块中完成剩余部分的start,length标记和character调用。这种情况下在character方法中使用toString两次调用分别只得到了#TEXT字符串的一部分,为了可以对一个Element中完整的#TEXT字符串进行操作,一般我们会选择建一个StringBuilder对象,在character方法中将读取到的字符串添加到StringBuilder对象中去,然后再endElement中对字符串进行处理并在endElement最后对StringBuilder进行clear。 另外,在解析XML中最后一个#TEXT节点时会把ch[]变为最后一个#TEXT的字节数组。
    查看全部
  • 具体操作如下: 第一步,获取一个SAXParserFactory对象 SAXParserFactory factory = SAXParserFactory.newInstance(); 第二步,获取一个SAXParser对象 SAXParser parser = factory.newSAXParser(); 第三步,创建一个类SAXParserHandler implements DefaultHandler; 第四步,在类中重写startElement()和endElement()方法. 在类中重写startDocument()方法和endDocument()方法. 第五步,创建SAXParserHandler对象 SAXParserHandler handler = new SAXParserHandler() 第六步,调用parse(url,handler实例)方法 parser.parse("book.xml",handler);
    查看全部
  • 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主要用来存储以及传递信息
    查看全部
    0 采集 收起 来源:初次邂逅 XML

    2016-07-29

  • java中的四种解析xml文件的方式
    查看全部

举报

0/150
提交
取消
课程须知
本课程是 Java 的中级课程,需要各位小伙伴们熟悉 Java 面向对象的思想,并能熟练掌握 Java I/O 的相关知识。对如何将内容写入 XML 文件感兴趣的小伙伴们,可以进入《Java 眼中的 XML --- 文件写入》一探究竟
老师告诉你能学到什么?
1、XML 的基本概念 2、XML 在实际项目开发中的的用途和优点 3、如何通过 Java 解析 XML

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!