2 a1175140101 a1175140101 于 2016.09.09 15:14 提问

【java求助】xml转化成对象集合

解析以下xml,要求返回List集合

 <datas>
  <GwJkda>
    <grxh01>1223</grxh01>
    <ytjxh1>AKTD</ytjxh1>
    <grxm01>张国计</grxm01>
  </GwJkda>
  <GwJkda>
    <grxh01>1223</grxh01>
    <ytjxh1>AKTD</ytjxh1>
    <grxm01>张国计</grxm01>
  </GwJkda>
    <GwJkda>
    <grxh01>1223</grxh01>
    <ytjxh1>AKTD</ytjxh1>
    <grxm01>张国计</grxm01>
  </GwJkda>
    <GwJkda>
    <grxh01>1223</grxh01>
    <ytjxh1>AKTD</ytjxh1>
    <grxm01>张国计</grxm01>
  </GwJkda>
    <GwJkda>
    <grxh01>1223</grxh01>
    <ytjxh1>AKTD</ytjxh1>
    <grxm01>张国计</grxm01>
  </GwJkda>
</datas>

4个回答

new_culture
new_culture   2016.09.09 17:54
已采纳

package csdn;

import java.io.IOException;
import java.util.List;

import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
/**

  • 各种解析均差不多,此为jdom2
  • 它和 dom4j是差不都的。
  • 如果需要jar包的话,留下邮箱我给你发
  • @author xrp09 */ public class JdomTest { public static void main(String[] args) { // TODO 自动生成的方法存根 SAXBuilder build = new SAXBuilder(); try { Document document = build.build("NewFile.xml"); Element rootElement = document.getRootElement(); List childs = rootElement.getChildren("GwJkda"); for(Element element : childs ){ List attributes = element.getChildren();//List attributes这个就是你要的list集合。 for(Element attr:attributes){ System.out.println("标签是:"+attr.getName()+",所对应的值是------"+attr.getValue()); } } } catch (JDOMException e) { e.printStackTrace(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } }

图片说明

a1175140101
a1175140101 代码按格式显示就好了,有点小强迫症,哈哈~~~~
大约一年之前 回复
Marksinoberg
Marksinoberg   Ds   Rxr 2016.09.09 17:28

我之前写过这类的代码,不妨参照一下。
http://blog.csdn.net/Marksinoberg/article/details/49280137?locationNum=1

或者
http://blog.csdn.net/Marksinoberg/article/details/50548598

希望对你有所帮助。

Marksinoberg
Marksinoberg 回复何必丶何苦呢: 恩
大约一年之前 回复
a1175140101
a1175140101 虽然没用上,不过谢谢您的答复
大约一年之前 回复
new_culture
new_culture   2016.09.09 17:55

package csdn;

import java.io.IOException;
import java.util.List;

import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
/**

  • 各种解析均差不多,此为jdom2
  • 它和 dom4j是差不都的。
  • 如果需要jar包的话,留下邮箱我给你发
  • @author xrp09 */ public class JdomTest { public static void main(String[] args) { // TODO 自动生成的方法存根 SAXBuilder build = new SAXBuilder(); try { Document document = build.build("NewFile.xml"); Element rootElement = document.getRootElement(); List childs = rootElement.getChildren("GwJkda"); for(Element element : childs ){ List attributes = element.getChildren();//List attributes这个就是你要的list集合。 for(Element attr:attributes){ System.out.println("标签是:"+attr.getName()+",所对应的值是------"+attr.getValue()); } } } catch (JDOMException e) { e.printStackTrace(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } }
a1175140101
a1175140101 自己琢磨搞定了,所以一直没来看,不过谢谢您的答复
大约一年之前 回复
ganyao939543405
ganyao939543405   2016.09.11 10:52

我写过json的orm映射,道理是一样的都是树形结构,你可以看我博客参考一下

a1175140101
a1175140101 虽然没用到,不过学习了,
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片