2013-06-04 28 views
1

parseDateTime()將來會持續返回約23天的日期。我的地方是西班牙,所以我是UTC + 2。有誰知道爲什麼會這樣做?我可能犯了一個明顯的錯誤。Joda parseDateTime()返回將來的日期

我正在使用Joda 2.2和JavaSE 1.7。

public class JodaTest { 
private static final String INPUT_DATE = "Monday, 03 Jun 2013 20:54:20 -0700"; 

public static void main(String[] args) { 
    DateTimeFormatter dtf = DateTimeFormat.forPattern("E, ee MMM YYYY HH:mm:ss Z"); 

    DateTime dt = dtf.parseDateTime(INPUT_DATE); 
    displayResults(dt); 
    dt = new DateTime(); 
    displayResults(dt); 
} 

public static void displayResults(DateTime dt) { 
    System.out.println("parsedDate: " + dt.toString()); 
} 

}

回答

1

你應該使用:

DateTimeFormatter dtf = DateTimeFormat.forPattern("E, dd MMM YYYY HH:mm:ss Z"); 

至於dd是 「Day in month」。

+0

工作就像一個魅力,謝謝! –