黑马程序员_王康 java利用DOM4J解析XML文件

<?xml version="1.0" encoding="gb2312"?>
<books>
	<book isbn="7506342605">
		<name>《水浒传》</name>
		<price>80</price>
		<author>施耐庵</author>
		<year>元末</year>
	</book>
	<book isbn="7020008720">
		<name>《西游记》</name>
		<price>90</price>
		<author>吴承恩</author>
		<year>明代</year>
	</book>
	<book isbn="7111103033">
		<name>《三国演义》</name>
		<price>75</price>
		<author>罗贯中</author>
		<year>元末</year>
	</book>
	<book isbn="7807074930">
		<name>《红楼梦》</name>
		<price>79</price>
		<author>曹雪芹</author>
		<year>清代</year>
	</book>
</books>
package test;

import java.io.File;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 利用DOM4J解析XML文件
 * @author 黑马_王康
 *
 */
public class TestDOM4J {

	public static void main(String args[]) {
		long start = System.currentTimeMillis();
		try {
			// 取得SAX解析器
			SAXReader reader = new SAXReader();

			// 解析文件
			File file = new File("src/books.xml");
			Document doc = reader.read(file);

			// 取得根节点
			Element root = doc.getRootElement();

			// 取得子节点列表
			for (int i = 0; i < root.nodeCount(); i++) {
				// 取得某一个子节点
				Element book = (Element) root.node(i);

				// 取得属性值
				String isbn = book.attributeValue("isbn");
				System.out.print(isbn);

				String name = book.node(0).getText();
				String price = book.node(1).getText();
				String author = book.node(2).getText();
				String year = book.node(3).getText();
				System.out.print("\t" + name);
				System.out.print("\t" + price);
				System.out.print("\t" + author);
				System.out.println("\t" + year);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		long end = System.currentTimeMillis();
		System.out.println(end - start);
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值