2011-08-03 100 views
2

我想使用乔达时间格式化DateTime对象到字符串,并将这些字符串解析回日期时间。但我不能因此当图案包括Z:与乔达时间不能解析日期与时区

DateTimeFormatter dtf = DateTimeFormat.forPattern("dd-MM-yyyy HH:mm:ss.SSS z"); 

    String dts = dtf.print(System.currentTimeMillis()); 

    System.out.println(dts); 

    DateTime dt = dtf.parseDateTime(dts); 

上面的代码抛出异常需要发生解析字符串为DateTime时。

你有什么想法吗?

Yosi

+1

什么是例外?打印的dts的价值是什么? –

+1

请参阅http://stackoverflow.com/questions/4498274/why-joda-datetimeformatter-cannot-parse-timezone-names-z –

回答

1

你可以这样做:

DateTime dt = new DateTime(); 
System.out.println(dt.toString("dd-MM-yyyy HH:mm:ss.SSS z")); 

已经在user guide

0

看看该模式不正确,也许尝试这一个

DateTimeFormatter dtf = DateTimeFormat.forPattern("dd-MM-yyyy HH:mm:ss.SSS'z"); 

为此工作我