java list xml_Xml转换为java List

package com.netstar8.dao.test;

import java.io.File;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;

import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;

import org.w3c.dom.NamedNodeMap;

import org.w3c.dom.Node;

import org.w3c.dom.NodeList;

import org.xml.sax.SAXException;

import com.netstar8.pojos.tree.BaseNode;

public class XmlToJavaList {

static Document doc;// 声明xml文件

static List tree = new ArrayList();

public static void main(String[] args) {

executeXml2List();

}

private static void executeXml2List() {

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

dbf.setIgnoringComments(true);

dbf.setIgnoringElementContentWhitespace(true);

try {

DocumentBuilder db = dbf.newDocumentBuilder();

doc = db.parse(new File("E:\\tree.xml"));

toTrans();

showNewTree();

} catch (ParserConfigurationException e) {

e.printStackTrace();

} catch (SAXException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

private static void showNewTree() {

BaseNode node;

for(int m=0;m

node = tree.get(m);

System.out.println("id:"+node.getId()+"\n");

}

}

private static void toTrans() {

BaseNode node;

NodeList tagNodes = doc.getElementsByTagName("item");

for (int i = 0; i < tagNodes.getLength(); i++) {

NamedNodeMap atts = tagNodes.item(i).getAttributes();

node = new BaseNode();

for(int l=0;l

Node att = atts.item(l);

if(att.getNodeName().equals("id")){

node.setId(Long.parseLong(att.getNodeValue()));

}else if(att.getNodeName().equals("text")){

node.setName(att.getNodeValue());

}

System.out.println("atts"+l+":"+att.getNodeName()+"="+att.getNodeValue());

}

tree.add(node);

}

}

}

tree.xml <?xml version='1.0' encoding='iso-8859-1'?>                                              

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值