public static class PersonScannerAdapter implements PersonScanner {
private Scanner fileScanner;
public PersonScannerAdapter(Scanner fileScanner) {
this.fileScanner = fileScanner;
}
@Override
public Person read() throws IOException, ParseException {
String firstName = null;
String middleName = null;
String lastName = null;
String stringDate = null;
Date date = null;
String line = fileScanner.nextLine ();
String[] arrayString = line.split(" ");
lastName = arrayString[0];
firstName = arrayString[1];
middleName = arrayString[2];
stringDate = line.substring(line.indexOf(middleName));
date = new SimpleDateFormat("dd MM yyyy").parse(stringDate);
return new Person(firstName, middleName, lastName, date);
}
@Override
public void close() throws IOException {
fileScanner.close();
}
}
package com.javarush.task.task19.task1904;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.io.File;
public class Solution {
public static void main(String[] args) {
}
public static class PersonScannerAdapter implements PersonScanner {
private Scanner fileScanner;
public PersonScannerAdapter(Scanner fileScanner) {
this.fileScanner = fileScanner;
}
@Override
public Person read() throws IOException, ParseException {
String firstName = null;
String middleName = null;
String lastName = null;
String stringDate = null;
Date date = null;
while(fileScanner.hasNext()){
String line = fileScanner.next();
String[] arrayString = line.split(" ");
lastName = arrayString[0];
firstName = arrayString[1];
middleName = arrayString[2];
stringDate = line.substring(line.indexOf(middleName));
date = new SimpleDateFormat("dd MM yyyy").parse(stringDate);
}
return new Person(firstName, middleName, lastName, date);
}
@Override
public void close() throws IOException {
fileScanner.close();
}
}
}