xml是一个树形组织结构人员关系,读取 xml结构人员组织 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这么个小XML文件,用dom4j去读取把! 是可以读取出来,不够是有组织部门关系的,dom4j我只读出了内容,层级关系怎末取到?谢谢 可以读出来,层级关系就要你自己指定了!比如depart name="1" 下面有depart name="11"那depart中就要有一个属性保存它的子节点,还有有一个list属性用来保存它的所有人员,这个按照上面组装就行了! depart中就要有一个属性保存它的子节点,还是不太明白,可以再具体一点吗 可以用Degister框架对XML进行解析,解析成JavaBean后进行面向对象编程。 其实就是一个xml,不同的节点去读取就是,给你贴一段关于读取xml的方法,你自己照样写一个就是,不难:<wuxialist> <txtbook> <name>AAAA</name> <author>aaa</author> </txtbook> <txtbook> <name>BBBB</name> <author>bbbb</author> </txtbook></wuxialist>要求运行结果为: 1.AAAA 2.BBBBimport java.io.File;import java.io.IOException;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.xml.sax.SAXException;public class b{ public static void main(String[] args) { try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder db = factory.newDocumentBuilder(); Document doc = db.parse(new File("d://a.xml")); Element elmtInfo = doc.getDocumentElement(); NodeList nodes = elmtInfo.getChildNodes(); int m = 1; for (int i = 0; i < nodes.getLength(); i++) { Node result = nodes.item(i); if (result.getNodeType() == Node.ELEMENT_NODE && result.getNodeName().equals("txtbook")) { NodeList ns = result.getChildNodes(); for (int j = 0; j < ns.getLength(); j++) { Node record = ns.item(j); if (record.getNodeType() == Node.ELEMENT_NODE && record.getNodeName().equals("name")) { System.out.println(m + ": " + record.getTextContent()); m++; } } } } } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }} 感谢大家,我的问题解决了,问了一个大神。是先用递归的方法,把表读出来,在递归的过程中,用一个while循环的方法,对当前节点进行回溯,找到最外里的tree,这样,在回溯的过程中,控制LEVEL,就是节点所在的层次,在递归过程中,要每一次读取,都把信息保存到数据库的表里,让子节点来找到上一级的父节点,这样就完成了。 新手 求一个解决方法 insert 语句 value值为数组 怎么写呢 新手问个简单问题,你肯定知道答案 网站页面图片等信息不完全显示 js问题 急,怎样将表单文本框的内容全都替换成别的 帮忙解释一下Struts <logic:iterate >标签使用 linux下安装j2sdk的问题 安装了j2ee的jdk,还用再装j2se吗? 如何控制div模块的位置 项目中链接mysql的问题,该怎么解决 tomcat 配置内存大小 如何在.java文件中用request获得jsp页面中单选按钮传来的值?
比如depart name="1" 下面有depart name="11"那depart中就要有一个属性保存它的子节点,还有有一个list属性用来保存它的所有人员,这个按照上面组装就行了!
<txtbook>
<name>AAAA</name>
<author>aaa</author>
</txtbook>
<txtbook>
<name>BBBB</name>
<author>bbbb</author>
</txtbook>
</wuxialist>
要求运行结果为: 1.AAAA 2.BBBB
import java.io.File;
import java.io.IOException;import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;public class b
{
public static void main(String[] args)
{
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder db = factory.newDocumentBuilder();
Document doc = db.parse(new File("d://a.xml"));
Element elmtInfo = doc.getDocumentElement();
NodeList nodes = elmtInfo.getChildNodes();
int m = 1;
for (int i = 0; i < nodes.getLength(); i++)
{
Node result = nodes.item(i);
if (result.getNodeType() == Node.ELEMENT_NODE && result.getNodeName().equals("txtbook"))
{
NodeList ns = result.getChildNodes(); for (int j = 0; j < ns.getLength(); j++)
{
Node record = ns.item(j); if (record.getNodeType() == Node.ELEMENT_NODE && record.getNodeName().equals("name"))
{
System.out.println(m + ": " + record.getTextContent());
m++;
}
}
}
}
}
catch (ParserConfigurationException e)
{
e.printStackTrace();
}
catch (SAXException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}