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

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

难度初级
时长 3小时 0分
学习人数
综合评分9.63
323人评价 查看评价
9.9 内容实用
9.5 简洁易懂
9.5 逻辑清晰
  • 注意:Element的getNodeValue=null
    查看全部
  • 1.解析xml文件:在Java程序中读取xml文件的过程 2.四种解析方式:DOM SAX DOM4J JDOM
    查看全部
  • 1.xml文件是以树形结构存储的(根节点-子节点...) 2.节点名称区分大小写 3.xml开头需要声明,格式:<?xml version="1.0" encoding="UTF-8"?>
    查看全部
    1 采集 收起 来源:初次邂逅 XML

    2018-03-22

  • 优点 sax采用事件驱动模式 对内存消耗小 适用于只需要处理xml中的数据 缺点 不易编码
    查看全部
  • element类型的节点名返回正常,节点值返回null。attr类型返回属性名称和属性值
    查看全部
  • .getFirstChild().getNodeValue() 可以直接用.getTextContent() 获得
    查看全部
  • //创建SAXReader的对象reader SAXReader reader = new SAXReader(); //通过reader的read加载person.xml文件 Document document = reader.read(new File("person.xml")); 通过elementIterator()方法返回一个Iterator it while(it.hasNext()){ Element book=(Element)it.next(); List<Attribute> bookAttrs=book.attributes(); for(Attribute attr:bookAttrs){ System.out.println("节点名"+attr.getName()+"节点值"+attr.getValue()); }
    查看全部
  • XML在Java中的四种解析方式
    查看全部
  • DOM4J是第三方提供的解析XML方法,需要jdom-2.0.5.jar包(最新) 步骤: 1、创建SAXBuilder对象 SAXBuilder saxBuilder = new SAXBuilder(); 2、创建一个输入流将XML加载到输入流中 InputStream in = new FileInputStream("src/person.xml"); 3、将xml加载到文件输入输入流中 Document document = saxBuilder.build(in); 4、根据Document对象获取xml中的根节点 Element rootEle = document.getRootElement(); 5、获取根节点下的子节点的list集合 List<Element> personList = rootEle.getChildren();
    查看全部
  • 常用的节点类型
    查看全部
  • 解析book节点的子节点 NodeList childNodes = book.getChildNodes(); for(int i=0;i<childNodes.getLength();i++) { 区分出text类型的node以及element类型的node if(childNodes.item(i).getNodeType() == Node.ELEMENT_NODE) { childNodes.item(i).getNodeName(); childNodes.item(i).getFirstChile().getNodeValue(); 或 childNodes.item(i).getTextContent(); } }
    查看全部
  • 1、获取所有book节点的集合 NodeList bookList = document.getElementByTagName("book"); 通过nodeList的getLength()方法可以获取bookList的长度 遍历每一个book节点 for(int i0;i<bookList.getLength();i++ ) { Node book = bookList.item(i); 通过item(i)方法获取一个book节点,nodelist的索引值从0开始 NamedNodeMap attrs = book.getAttributes();获取book记得Ian的所有属性集合 for(int j=0; j<attrs.getLength(); j++)属性的个数 { Node attr = attrs.item(j);通过item(index)方法获取book节点的某一个属性 attr.getNodeName();获取属性名 attr.getNodeValue();获取属性值 前提:已经知道book节点有且只能有1个id属性 1、将book节点进行强制类型转换,转换成Element类型 Element book = (Element) bookList.item(i); 2、通过getAttribute("id")方法获取属性值 String attrValue = book.getAttribute("id"); } }
    查看全部
  • 准备工作: 1、创建一个DocumentBuilderFactory的对象 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2、创建一个DocumentBuilder对象 DocumentBuilder db = dbf.newDocumentBuilder();(需要捕获异常) 3、通过DocumentBuilder对象的parser方法加载xml文件到当前项目下 Document document = db.parse("文件名");(需要捕获异常,导入Document对象时需要导入org.w3c.dom下的)
    查看全部
  • 新知:为了保证所使用的第三方jar包在移植到其他电脑上可以正常运行,在项目下创建一个lib目录,单独存储调用的第三方jar包,并引用(build path - add to build path)。
    查看全部
  • 新知:DOM在解析xml文件时需要将整个文件加载到内存。SAX解析则利用一个Handler逐一解析(类似于HtmlParser的Visitor),定义Handler的访问行为(Handler继承DefaultHandler类,重写父类的方法)。
    查看全部

举报

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

微信扫码,参与3人拼团

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

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