dom4j 使用记录

最近,突然感到可能要解析xml,所以就又复习了一下dom4j,当然解析xml的包以及方法很多,dom4j只是其中的一种,也不知道现在都用些什么。写点程序就当是笔记了。

package com.xml.dom4j.test;

import java.util.Iterator;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.Node;

public class Dom4jTest {

	public static void main(String[] args) {
		StringBuffer sb = new StringBuffer();
//产生xml
		sb.append("<Songs><song>");
		sb.append("<mp3 kbs=\"128\" size=\"6128\">");
		sb.append("<id3><title>Simon</title>");
		sb.append("</id3></mp3></song></Songs>");
		try{
		Document document = DocumentHelper.parseText(sb.toString());
		treeWalk(document);
	}catch(Exception e){
			e.printStackTrace();
		}
	}
	 public static void treeWalk(Document document) {
	        treeWalk( document.getRootElement() );
	    }
	 public static void treeWalk(Element element) {
	        for ( int i = 0, size = element.nodeCount(); i < size; i++ ) {
	        	
	            Node node = element.node(i);
//打印该element的name
	            System.out.println(element.getName());
//打印element所含node的name
	            System.out.println(node.getName());
//对名为mp3的element进行操作
	            if(element.getName().equals("mp3")){
//获取属性size的值
	            	Attribute attribute=element.attribute("size");
	        		String text=attribute.getText();
	        		System.out.println(text);	
	            }
	            if ( node instanceof Element ) {
	                treeWalk( (Element) node );
	            }
	            else {
//获取element的内容
	            	System.out.println(element.getText());
	               	            }
	        }
	 }

}

 以上只是对dom4j的简单应用,对于复杂的应用还需要学习。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值