使用下面的代碼我試圖轉換時間:"2014-10-31T23:59:59"
只是 "yyyy-MM-dd"
格式,所以在這種情況下,"2014-10-31"
。轉換日期使用約達時間和忽略時間
下面是代碼:
import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
public class TestConvert {
public static void main(String args[]){
DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd");
DateTime dt = formatter.parseDateTime("2014-10-31T23:59:59");
System.out.println("formatted date is "+dt.toString());
}
}
例外:
Exception in thread "main" java.lang.IllegalArgumentException: Invalid format: "2014-10-31T23:59:59" is malformed at "T23:59:59"
at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:899)
at (TestConvert.java:11)
如何忽略了時間和剛剛創建的日期?
你的代碼是不是正常?輸出爲「格式化日期爲2014-10-31T23:59:59.000Z」,當我期望它的「格式化日期爲2014-10-31」時。另外var「formatter」從來沒有使用? – 2014-10-31 13:11:38
@藍天覆制粘貼錯誤 - 事實上,你是對的。你應該調用'formatter.print' - 看我編輯的答案。 – Mureinik 2014-10-31 13:20:52