【发布时间】:2012-03-04 09:29:32
【问题描述】:
我有一个日期字段,当使用XStream 将其转换为 xml 时,以毫秒和区域为单位给出时间。我只需要将其转换或格式化为"MMMM dd, yyyy HH:mm:ss"。如何使用 XStream 做到这一点?我不想改变 getter 和 setter。谢谢。
我的班级:
public class Datas {
private String name;
private Calendar dob;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Calendar getDob() {
return dob;
}
public void setDob(Calendar dob) {
this.dob = dob;
}
public static void main(String[] args) {
Datas datas = new Datas();
datas.setName("Ahamed");
datas.setDob(Calendar.getInstance());
XStream stream = new XStream();
System.out.println(stream.toXML(datas));
}
}
输出:
<Datas>
<name>Ahamed</name>
<dob>
<time>1329081818801</time>
<timezone>Asia/Calcutta</timezone>
</dob>
</Datas>
我想在不更改 getter 和 setter 的情况下格式化 dob 标签。谢谢。
【问题讨论】:
-
像这样的巨大 XML?可以举个例子吗?
-
查看XStream - Converter Tutorial。有一个关于日期转换的部分。