parseDateTime()将来一直返回约23天的日期。我的当地人是西班牙,所以我是UTC + 2。有谁知道为什么会这样做?我可能犯了一个明显的错误。
我正在使用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());
}
}
答案 0 :(得分:1)
您应该使用:
DateTimeFormatter dtf = DateTimeFormat.forPattern("E, dd MMM YYYY HH:mm:ss Z");
dd
代表“Day in month”。