• 大小: 368KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-21
  • 语言: Java
  • 标签: java  xml  dtd  xsd  

资源简介

文档中有代码案例,详细讲解了使用java读取xml,并附带有关于xml的dtd讲解,里面包含详细的文档和代码案例。和读取xml所需的jar。

资源截图

代码片段和文件信息

package com.bzjy.test;

import org.junit.Test;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import java.io.*;

public class JavaReadxml {
// Document可以看作是xml在内存中的一个镜像那么一旦获取这个Document 就意味着可以通过对
// 内存的操作来实现对xml的操作首先第一步获取xml相关的Document
private Document doc = null;

public void init(String xmlFile) throws Exception {
// 很明显该类是一个单例先获取产生DocumentBuilder工厂
// 的工厂在通过这个工厂产生一个DocumentBuilder
// DocumentBuilder就是用来产生Document的
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
// 这个Document就是一个xml文件在内存中的镜像
doc = db.parse(new File(xmlFile));
}

// 该方法负责把xml文件的内容显示出来
public void viewxml(String xmlFile) throws Exception {
this.init(xmlFile);
// 在xml文件里只有一个根元素先把根元素拿出来看看
Element element = doc.getDocumentElement();
System.out.println(“根元素为:“ + element.getTagName());

NodeList nodeList = doc.getElementsByTagName(“person“);
System.out.println(“book节点链的长度:“ + nodeList.getLength());

Node fatherNode = nodeList.item(0);
System.out.println(“父节点为:“ + fatherNode.getNodeName());

// 把父节点的属性拿出来
NamedNodeMap attributes = fatherNode.getAttributes();

for (int i = 0; i < attributes.getLength(); i++) {
Node attribute = attributes.item(i);
System.out.println(“book的属性名为:“ + attribute.getNodeName()
+ “ 相对应的属性值为:“ + attribute.getNodeValue());
}

NodeList childNodes = fatherNode.getChildNodes();
System.out.println(childNodes.getLength());
for (int j = 0; j < childNodes.getLength(); j++) {
Node childNode = childNodes.item(j);
// 如果这个节点属于Element 再进行取值
if (childNode instanceof Element) {
// System.out.println(“子节点名为:“+childNode.getNodeName()+“相对应的值为“+childNode.getFirstChild().getNodeValue());
System.out.println(“子节点名为:“ + childNode.getNodeName()
+ “相对应的值为“ + childNode.getFirstChild().getNodeValue());
}
}

}

@Test
public void test_xml() throws Exception {
JavaReadxml parse = new JavaReadxml();
// 我的xml文件放置在项目下
parse.viewxml(“person.xml“);
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      23969  2017-01-06 11:52  dtd-xml\DTD文件.docx

     文件        607  2017-01-06 10:15  dtd-xml\Read_xml\.classpath

     文件        297  2017-06-05 12:54  dtd-xml\Read_xml\.mymetadata

     文件       1535  2017-01-06 11:29  dtd-xml\Read_xml\.project

     文件        500  2017-01-06 10:13  dtd-xml\Read_xml\.settings\.jsdtscope

     文件       1009  2017-01-06 11:30  dtd-xml\Read_xml\.settings\com.genuitec.eclipse.j2eedt.core.prefs

     文件        364  2017-01-06 10:13  dtd-xml\Read_xml\.settings\org.eclipse.jdt.core.prefs

     文件        462  2017-01-06 11:30  dtd-xml\Read_xml\.settings\org.eclipse.wst.common.component

     文件        252  2017-01-06 10:13  dtd-xml\Read_xml\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2017-01-06 10:13  dtd-xml\Read_xml\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2017-01-06 10:13  dtd-xml\Read_xml\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件        365  2017-06-05 12:55  dtd-xml\Read_xml\person.xml

     文件        387  2017-06-05 13:13  dtd-xml\Read_xml\pet.dtd

     文件        575  2017-06-05 13:13  dtd-xml\Read_xml\pet3.xml

     文件       2300  2017-06-05 12:56  dtd-xml\Read_xml\src\com\bzjy\test\JavaReadxml.java

     文件        829  2017-01-06 10:13  dtd-xml\Read_xml\WebRoot\index.jsp

     文件         36  2017-01-06 10:13  dtd-xml\Read_xml\WebRoot\meta-INF\MANIFEST.MF

     文件       3043  2017-06-05 12:56  dtd-xml\Read_xml\WebRoot\WEB-INF\classes\com\bzjy\test\JavaReadxml.class

     文件        462  2017-01-06 11:29  dtd-xml\Read_xml\WebRoot\WEB-INF\web.xml

     文件     930816  2017-06-05 13:08  dtd-xml\TP06.ppt

     文件      18960  2017-01-06 11:49  dtd-xml\xml文档.docx

     文件       1411  2011-02-28 16:42  dtd-xml\教学演示案例\示例10:按照规范格式保存宠物信息到HTML文档\TestIO.java

     文件        420  2011-02-28 16:42  dtd-xml\教学演示案例\示例1:xhtml文件举例\example.xhtml

     文件        381  2011-02-28 16:42  dtd-xml\教学演示案例\示例2:xml文件举例\pet1.xml

     文件        944  2011-02-28 16:42  dtd-xml\教学演示案例\示例3:使用内部DTD文件\pet2.xml

     文件        100  2011-02-28 16:42  dtd-xml\教学演示案例\示例6:使用CSS格式化xml\pet.css

     文件       1976  2011-02-28 16:42  dtd-xml\教学演示案例\示例7:使用DOM解析xml文件\TestDOM.java

     文件        865  2011-02-28 16:42  dtd-xml\教学演示案例\示例8:使用Reader读取文件\TestIO1.java

     文件        674  2011-02-28 16:42  dtd-xml\教学演示案例\示例9:使用Writer写文件\TestIO2.java

     目录          0  2018-03-15 12:50  dtd-xml\Read_xml\WebRoot\WEB-INF\classes\com\bzjy\test

............此处省略29个文件信息

评论

共有 条评论