随着Joda时间的随机数变化

时间:2013-06-21 16:07:57

标签: java jodatime

我的Joda Time在我的代码中将数字从9更改为1.

代码:

String name = getFileName();
BufferedReader reader = new BufferedReader(new FileReader(name));

DateTime firstDate = new DateTime();
DateTimeFormatter dtf = DateTimeFormat.forPattern("YYYYMMDD");
String date = dtf.print(firstDate);
System.out.println(date);

String fake;
while ((fake = reader.readLine()) != null) {
    String [] holder = fake.split(" ");

    firstDate = dtf.parseDateTime(holder[2]);
    System.out.println(holder[2]);
    System.out.println(firstDate);
    String useFirstDate = dtf.print(firstDate);
    System.out.println(useFirstDate);
    System.out.println("here");
    break;
}

输出:

Please input File Name
futuresmin
201306172 //System.out.println(date);
19870901  //System.out.println(holder[2]);
1987-01-01T00:00:00.000-05:00 //System.out.println(firstDate);
19870101  //System.out.println(useFirstDate);
here  //System.out.println("here");

我不知道这是一个常见的问题,还是仅仅是我,但我没有在互联网上找到有关此问题的任何内容。为什么Joda Time会将19870901更改为19870101?

1 个答案:

答案 0 :(得分:3)

“DD”是的日子,而不是的日子,即“dd”。 Your format string is incorrect


在不相关的说明中,很难将输出与代码相关联。一般来说,最好将噪声保持在最小值,并使其显式哪个输出行来自哪个代码,如标题。