在java中使用yyyy-MM-ddT00:00:00时间从String创建XMLGregorianCalendar

时间:2015-06-25 07:37:48

标签: java xml datetime gregorian-calendar

我有一个问题我需要从字符串创建XMLGregorianCalendar,如“07.04.2015”,时间00:00:00,例如2015-04-07T00:00:00我正在为此做什么

public static XMLGregorianCalendar getF(String stringDate) {
    XMLGregorianCalendar xgc = null;
    String formatedData = null;
    try {
        SimpleDateFormat in_data = new SimpleDateFormat("dd.MM.yyyy");
        SimpleDateFormat out_data = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
        Date date = in_data.parse(stringDate);
        formatedData = out_data.format(date);
        String df = formatedData;
        xgc = DatatypeFactory.newInstance().newXMLGregorianCalendar(df);
    } catch (ParseException ex) {
        ex.printStackTrace();
    } catch (DatatypeConfigurationException e) {
        e.printStackTrace();
    }
    return xgc;

}

此代码可以正常使用某些结果

getF("2015-04-07") -> 2015-04-07T00:00:00
getF("2015-04-07 14:40:49") -> 2015-04-07T00:00:00

但是,有时此方法会返回2015-04-07T01:00:00 我不知道为什么时间是01:00:00时间,而不是00:00:00

0 个答案:

没有答案