站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题关于dom4j如何读取xml内容的问题?

关于dom4j如何读取xml内容的问题?

摘要: 关于dom4j如何读取xml内容的问题?


以下是config.xml的内容:

-#60;?xml version=-#34;1.0-#34; encoding=-#34;GB2312-#34;?-#62;
-#60;roles-#62;
-#60;role-#62;
-#60;roleName-#62;设备科-#60;/roleName-#62;
-#60;roleMenus-#62;
-#60;menu-#62;计划-#60;/menu-#62;
-#60;menu-#62;总结-#60;/menu-#62;
-#60;/roleMenus-#62;
-#60;/role-#62;
-#60;role-#62;
-#60;roleName-#62;后勤科-#60;/roleName-#62;
-#60;roleMenus-#62;
-#60;menu-#62;进展-#60;/menu-#62;
-#60;/roleMenus-#62;
-#60;/role-#62;
-#60;/roles-#62;

请问我用dom4j如何读出每一个menu?

以下代码
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;

public class MyXMLReader {
public static void main(String arge[]) {
try {
File f = new File(-#34;config.xml-#34;);
SAXReader reader = new SAXReader();
Document doc = reader.read(f);
Element root = doc.getRootElement();
Element foo;
for (Iterator i = root.elementIterator(-#34;role-#34;); i.hasNext();) {
foo = (Element) i.next();
System.out.print(-#34;roleName:-#34; + foo.elementText(-#34;roleName-#34;));
//以下如何读出roleMenus下面包含的每一个menu?
……
}
} catch (Exception e) {
e.printStackTrace();
}
}

谢谢!


Document xmlDoc = saxreader.read(new File(fileName));
Element root = xmlDoc.getRootElement();


Element foo = null;
for (Iterator i = root.elementIterator(-#34;role-#34;); i.hasNext();) {
foo = (Element) i.next();
Iterator ii = foo.elements(-#34;roleMenus-#34;).iterator();

while(ii.hasNext()) {

Iterator ii1 = ((Element)ii.next()).elementIterator(-#34;menu-#34;);
while(ii1.hasNext()) {
System.out.println(((Element)ii1.next()).getText());
}
}
}


ok
多谢interpb(曾曾胡,深怕情多累美人!!!)!



↑返回目录
前一篇: Swing编程,如何实现窗体的打开和关闭!
后一篇: 右移-gt