有一个文本文件,我用一个split方法来剪切。一切都没关系,除了格式化我有问题。预期输出格式:
姓名:John,姓:Davidson,出生日期:05.may.1988,出生地:贝尔格莱德
日期必须是“05.may.1988”。相反,我把它作为输入文件中的05051988
。我的错误在哪里?什么是解决方案?
Persons person = new Persons();
String text = "John.Davidson/05051988/Belgrade Michael.Barton/01011968/Krakov Ivan.Perkinson/23051986/Moscow";
String[] valami = text.split("[ ./]+");
for(int i=0; i < valami.length; i+=4) {
person.name = valami[i];
person.lastName = valami[i+1];
person.dateBirth = valami[i+2];
person.Birthplace = valami[i+3];
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("ddMMyyyy");
LocalDate ld = LocalDate.parse(dateBirth, dtf) ;
System.out.println(person);
}
人员类:
@Override
public String toString () {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd.MMM.yyyy.");
String s = dateBirth.format(dtf);
return "Ime: " + this.name + " , "
+ "Prezime: " + this.lastName + " , "
+ "Datum rodjenja: " + this.dateBirth + " , "
+ "Mesto rodjenja: " + this.Birthplace;
}