Xstream日期属性

时间:2012-11-22 10:03:19

标签: java xstream

我想在xstream输出中设置日期属性的格式,我创建了一个日期转换器,它可以转换为正确的格式,但是,它会创建一个新的子元素,而不是添加父元素属性。

我想要以下内容

当我为Date.class注册日期转换器时,我得到以下内容:

<output>
<date>20/11/2012</date>

还有偏移问题,解析时实际日期似乎有差异,例如......如果我将20/11/2012 10.30解析为当前时间..输出的内容是20/11/2012 10.12 ...或者其他不同的东西..我需要进行一些转换或偏移吗?

1 个答案:

答案 0 :(得分:-1)

我创造了这个......似乎做了我想要的事情

private DateTimeFormatter fmt = DateTimeFormat.forPattern("dd/MM/Y HH:mm:ss");

    public boolean canConvert(Class type) {
        return type.equals(Date.class);
    }

    public Object fromString(String str) {      
        DateTime dt = fmt.parseDateTime(str);
        return dt.toDate();
    }

    public String toString(Object obj) {        
        return fmt.print(((Date) obj).getTime());
    }