Chornologic:
Tengo un formateador Fecha Hora ¿Qué estoy tratando de fechas introducidos formato a formato (d / MM / aaaa) se muestra a continuación
DateTimeFormatter format = DateTimeFormatter.ofPattern("dd/MM/yyyy");
entonces yo estoy usando este formateador para tomar la entrada del usuario en la fecha de nacimiento como una cadena y luego intentar analizar que a través de la tienda como una variable LocalDate con temp almacenar la fecha de nacimiento introducido por el usuario
public void addCustomer() throws ParseException {
customerID++;
//Create Scanner
Scanner scan = new Scanner(System.in);
//Take user input
System.out.println("Please enter your name: ");
String name = scan.nextLine();
System.out.println("Please enter your Date of Birth(dd/MM/yyyy): ");
String temp = scan.nextLine();
LocalDate date = LocalDate.parse(temp);
Customer c = new Customer(customerID, name, date, false, "N/A");
customers.add(c);
}
Sin embargo, esto siempre devuelve un DateTimeParseException: El texto no pudo analizar. Es la cuestión de cómo soy la creación de la Fecha Hora formateador para causar siempre esta excepción? Mostrado a continuación
Exception in thread "main" java.time.format.DateTimeParseException: Text '27/01/1999' could not be parsed at index 0
at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2046)
at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948)
at java.base/java.time.LocalDate.parse(LocalDate.java:428)
at java.base/java.time.LocalDate.parse(LocalDate.java:413)
at BikeNow.addCustomer(BikeNow.java:153)
at BikeNow.main(BikeNow.java:98)
Ros5292:
Pase su DateTimeFormatter
objeto.
Cambia esto:
LocalDate date = LocalDate.parse(temp);
…a esto:
LocalDate date = LocalDate.parse(temp, format);