以前转换的时候从来没有遇到过问题。。
今天(准确说是昨天晚上)遇到了一个无法理解的问题。
以前在遇到如下XML时:
<tests> <desc>测试例子</desc> <ts> <test> <id>132</id> </test> <test> <id>133</id> </test> <test> <id>134</id> </test> <ts> </tests>
会写一个Tests类,包含String desc和List<Test> ts,类Test有一个int id...这样转的时候是没有任何问题的。
当遇到如下XML时:
<tests> <test> <id>132</id> </test> <test> <id>133</id> </test> <test> <id>134</id> </test> </tests>
我创建了一个Tests类,含有一个List<Test>,无论如何都转不过去....
最后实在没办法,先用对象去生成xml,最后发现自己太容易形成定向思维了。。
其实,下面的这个XML处理起来更方便。只需要一个Test对象,使用List<Test>即可.....
如下:
String string = "<tests><test><id>132</id></test><test><id>133</id></test><test><id>134</id></test></tests>"; XStream xstream = new XStream(); xstream.alias("tests", ArrayList.class); xstream.alias("test", Test.class); List<Test> tests = (List<Test>)xstream.fromXML(string);
如此简单的方式,我竟然浪费了这么长的时间.......唉...不能再浪费了。