Ich kann nicht scheinen, das Problem mit dem Beispielcode unten zu sehen. Aus irgendeinem Grund scheint das Jahr zu ignorieren und zu sagen, die Daten sind die gleichen, wie in der Ausgabe unten gesehen werden kann. Ich muss etwas Einfaches vermissen.Java-String zu Datetime-Konvertierungsproblem
01/28/2006
01/16/2007
Di 1. April 00.00.00 PDT 2008
Di 1. April 00.00.00 PDT 2008
getan
import java.util.*;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
class ExampleProgram {
public static void main(String[] args){
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
String d1String = "01/28/2006";
String d2String = "01/16/2007";
System.out.println(d1String);
System.out.println(d2String);
Date d1=null;
try {
d1 = df.parse(d1String);
} catch (ParseException e) {
System.out.println(e.getMessage());
}
Date d2=null;
try {
d2 = df.parse(d2String);
} catch (ParseException e) {
System.out.println(e.getMessage());
}
System.out.println(d1);
System.out.println(d2);
System.out.println("done");
}
}
Ein Aprilscherz Witz? Es scheint nur sehr erfunden, dass die Daten BEIDE entsprechen dem 1. April. + 1 Jahr, -12 Monate = = dasselbe Datum. Wenn Ihr Dateformat-Objekt strict (df.setLenient (false)) ist, würde es den Fehler für Sie auslösen. – evnafets