日期:2014-05-19  浏览次数:20720 次

用XStream把xml文件转换为Java对象
我的XML文件是这样的:
XML code

<root> 
  <mxCell id="1" parent="0" /> 
    <mxCell id="2" parent="1" value="Name:61">
      <mxGeometry x="220.0" y="160.0" /> 
         </mxCell>
      <mxCell id="2" parent="1" value="Name:61">
      <mxGeometry x="220.0" y="160.0" /> 
         </mxCell>
</root>


我们平时用XStream把Java对象转换为xml,生成的xml一般都是:
XML code
<class-A>
   <属性A1>a1</属性A1>
   <class-B>
      <属性B1>b1</属性B1>       
   </class-B>
</class-A>


而我现在的xml格式是:
XML code
<class-A>
   <class-B  属性B1="b1" 属性B2="b2">
      <class-C 属性C1="c1" 属性C2="c2" />
   </class-B>
</class-A>



请问这种如果用XStream该怎么有XML转换为Java对象,
如果XStream没办法,用最普通的Document改怎么读取?

------解决方案--------------------
探讨
我的XML文件是这样的:

XML code

<root>
<mxCell id="1" parent="0" />
<mxCell id="2" parent="1" value="Name:61">
<mxGeometry x="220.0" y="160.0" />
</mxCell>
<mxCell id="2……

------解决方案--------------------
可以用最普通的Document解析,不过要麻烦一点而已!
------解决方案--------------------
xstring 在xml和java对象转化中应该有格式设定的功能的,我前几年玩的时候已经有一些别名之类的功能,具体的楼主可以去xstream官网去了解。
即使xstring不能满足楼主的需求,其实Java Object Map XML的工具类多了,Spring OMX功能就是专门整合这些开源 OMX框架的,里面能设置格式的多了。

没有必要使用其他xml工具再转格式。具体的不说了,楼主去查资料吧。