如何将joda datetime转换为String,反之亦然

时间:2014-11-20 07:23:08

标签: java datetime

有没有办法将Joda DateTime转换为String,然后从该String转换为DateTime。

DateTime d = ..;
String date = d.toString();
DateTime dateTime = DateTime.parse(date);

我的问题是上述方法是否有效或需要使用格式化程序。

3 个答案:

答案 0 :(得分:16)

试试这个

DateTime dt = new DateTime();
DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
String dtStr = fmt.print(dt);

答案 1 :(得分:2)

对于那些想要解析 toString 值的人,可以阅读我的答案。

如果您仔细阅读DateTime的实施内容。 toString方法被AbstractInstant覆盖。

@ToString
public String toString() {
    return ISODateTimeFormat.dateTime().print(this);
}

现在,解析toString

中的值
DateTime dt = new DateTime();
String dtStr = dt.toString();
DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
DateTime newDt = fmt.parse(dtStr);

答案 2 :(得分:0)

LocalDate localDate = new LocalDate(2010, 9, 14);
DateTimeFormatter formatter = DateTimeFormat.forPattern("MM/dd/yyyy");
String formattedDate = formatter.print(localDate);