【问题标题】:How to use xstream to convert xml string into SparseArray object?如何使用 xstream 将 xml 字符串转换为 SparseArray 对象?
【发布时间】:2014-02-24 08:10:20
【问题描述】:

我知道如何使用 xStream 将 xml 转换为一个对象,该对象可能包含一个数组类型的字段或向量。但我不知道是否可以使用它来转换为 SparseArray。这是一个演示代码:

假设我有一所学校,一个学校有很多教室,每个教室都有一个房间号。很简单的模式。最好使用 sparseArray。

public class School {
    private SparseArray<Classroom> classrooms;
}

public class Classroom {
    private roomNumber;
    //OtherStuff
}

现在我有一个这样的 xml 文件:

<school>
    <class>
        <room_number>1</room_number>
        <student_number>100</student_number>
    </class>
    <class>
        <room_number>2</room_number>
        <student_number>100</student_number>
    </class>
</school>

如果我有这个 xml 文件的字符串。如何设置 xStream 以将其转换为我的学校课程?将正确的键设置到它的稀疏数组中?

谢谢!

补充:也欢迎任何其他不使用 xStream 的方法!

【问题讨论】:

    标签: xml sparse-matrix xstream


    【解决方案1】:

    XStream 可与转换器一起使用。对于一些“经典”对象类型,例如 ArrayList、HashMap、... XStream 有一堆预定义的转换器。 您的 SparseArray 不是 java“经典”对象,XStream 没有内置转换器。

    所以,我建议您基于 XStream 的 ArrayConverter(位于 com.thoughtworks.xstream.converters.collections.ArrayConverter)构建自己的。这门课非常简单,应该不是一项艰巨的任务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-22
      • 2012-07-11
      • 2011-03-12
      • 2011-05-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多