📄 domnodetest.java
字号:
import javax.xml.parsers.*;
import org.w3c.dom.*;
import java.io.IOException;
import java.io.File;
import org.xml.sax.SAXException;
public class DOMNodeTest
{
void display(String filename) //函数
{
DocumentBuilderFactory factory; //声明DocumentBuilderFactory类对象(声明解析工厂)
DocumentBuilder parser; //声明DocumentBuilder类对象(获取解析器)
Element book,title,author,pages,price; //声明Element类对象(XML文档中的标签元素)
try
{
factory=DocumentBuilderFactory.newInstance(); //声明解析工厂
parser=factory.newDocumentBuilder(); //获取解析器
File file=new File(filename);
Document doc=parser.parse(file); //获取XML文件(doc这个Document对象就代表一个XML文档的树模型)
NodeList books=doc.getElementsByTagName("JAVAXML:BOOK"); //获取节点列表
for(int i=0; i<books.getLength(); i++) //遍历BOOK元素
{
book=(Element)books.item(i); //获取BOOK的元素
title=(Element)book.getElementsByTagName("JAVAXML:TITLE").item(0); //获取title元素
author=(Element)book.getElementsByTagName("JAVAXML:AUTHOR").item(0);
pages=(Element)book.getElementsByTagName("JAVAXML:PAGES").item(0);
price=(Element)book.getElementsByTagName("JAVAXML:PRICE").item(0);
String value;
value=title.getFirstChild().getNodeValue(); //获得title元素的第一个值
System.out.println("<<"+value+">>");
value=author.getFirstChild().getNodeValue();
System.out.println("作者:"+value);
value=pages.getFirstChild().getNodeValue();
System.out.println("页数:"+value);
value=price.getFirstChild().getNodeValue();
System.out.println("定价:"+value);
value=book.getAttribute("SALEROOM");
System.out.println("销量:"+value+"\r\n");
}
}
catch(ParserConfigurationException e)
{
System.out.println(e);
}
catch(SAXException e)
{
System.out.println(e);
}
catch(IOException e)
{
System.out.println(e);
}
}
public static void main(String[] args)
{
DOMNodeTest app=new DOMNodeTest();
app.display("XMLTest5.xml");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -