如何用jdom得到相同节点的属性和内容

havenbird 2003-08-19 12:25:58
xml文件如下:
<?xml version="1.0" encoding="GBK" ?>
- <document form="zwdt">
+ <noteinfo noteid="912" unid="331205503E0DF5AA48256D830036C16E" sequence="1">
- <created>
<datetime>20030815T175804,62+08</datetime>
</created>
- <modified>
<datetime>20030815T175823,93+08</datetime>
</modified>
- <revised>
<datetime>20030815T175823,92+08</datetime>
</revised>
- <lastaccessed>
<datetime>20030815T175823,92+08</datetime>
</lastaccessed>
- <addedtofile>
<datetime>20030815T175823,92+08</datetime>
</addedtofile>
</noteinfo>
+ <updatedby>
<name>CN=admin/O=epsoft</name>
</updatedby>
- <item name="time">
<text>qwedqwed</text>
</item>
- <item name="subject">
<text>2003-8-8</text>
</item>
- <item name="text">
- <richtext>
<pardef id="1" />
<par def="1">wefwerfrwefrewf</par>
</richtext>
</item>
</document>

我想得到每一个item下的name属性的值和下面text的值,请搞手指点一下该怎么做,谢谢!

我这么写的:
for (int k=0;k<tempOne.getChildren("item").size();k++){
System.out.println(tempOne.getChild("item").getAttributeValue("name")+"&&&"+tempOne.getChild("item").getChildText("text"));
}

可是这样只能得到第一个item的节点
...全文
83 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
havenbird 2003-08-19
  • 打赏
  • 举报
回复
牛人啊!受益
feiyuegaoshan 2003-08-19
  • 打赏
  • 举报
回复
把上面的细节改一改,替换成你的内容就可以了。
基本实现都是一样的。
feiyuegaoshan 2003-08-19
  • 打赏
  • 举报
回复

public class TestElementLength
{
static String xmlContent;
public static void init()
{
xmlContent = "<?xml version=\"1.0\" encoding=\"GB2312\"?>"
+ "<lib>"
+ "<book>"
+ "<name>Java</name>"
+"<author>tom</author>"
+"<author>jack</author>"
+ "</book>"
+ "<book>"
+ "<name>XML</name>"
+ "<pubdate>2002-10-07</pubdate>"
+ "</book>"
+ "</lib>";
}

public static void outputXml()
{
try
{
org.jdom.input.SAXBuilder sb = new org.jdom.input.SAXBuilder();
org.jdom.Document doc = sb.build(new java.io.
StringBufferInputStream(xmlContent));
org.jdom.Element root = doc.getRootElement();
java.util.List books = root.getChildren("book"); //得到根元素所有子元素的集合
for(int i=0;i<books.size();i++)
{
org.jdom.Element book =(org.jdom.Element) books.get(i);
System.out.println(book.getChild("name").getText());
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
public static void main(String[] args)
{
init();
outputXml();
}
}

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧