//Now I beg you, brothers, by our Lord Jesus Christ, and by the love of the Spirit, that you strive together with me in your prayers to God for me (Romans 15:30) ---------------------------------------------------Solution.java-------------------------------------------------------------- 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; /* РеÑе один адапÑÐµÑ */ 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 { SimpleDateFormat sdFormat = new SimpleDateFormat("ddMMyyyy"); Date date = null; String lName = fileScanner.next(); String fName = fileScanner.next(); String sName = fileScanner.next(); try { date = sdFormat.parse(fileScanner.next() + fileScanner.next() + fileScanner.next()); } catch (ParseException e){} return new Person(fName, sName, lName, date); } @Override public void close() throws IOException { fileScanner.close(); } } } ------------------------------------------------------------------------------------------------------------------------------ ---------------------------------------------------Person.java---------------------------------------------------------------- package com.javarush.task.task19.task1904; import java.util.Date; public class Person { private String firstName; private String middleName; private String lastName; private Date birthDate; public Person(String firstName, String middleName, String lastName, Date birthDate) { this.firstName = firstName; this.middleName = middleName; this.lastName = lastName; this.birthDate = birthDate; } @Override public String toString() { return String.format("%s %s %s %s", lastName, firstName, middleName, birthDate.toString()); } } ------------------------------------------------------------------------------------------------------------------------------ ----------------------------------------------------PersonScanner.java-------------------------------------------------------- package com.javarush.task.task19.task1904; import java.io.IOException; public interface PersonScanner { Person read() throws IOException; void close() throws IOException; } ------------------------------------------------------------------------------------------------------------------------------ /* РеÑе один адапÑÐµÑ ÐдапÑиÑоваÑÑ Scanner к PersonScanner. ÐлаÑÑом-адапÑеÑом ÑвлÑеÑÑÑ PersonScannerAdapter. РклаÑÑе адапÑеÑе ÑоздаÑÑ Ð¿ÑиваÑное ÑиналÑное поле Scanner fileScanner. Ðоле иниÑиализиÑоваÑÑ Ð² конÑÑÑÑкÑоÑе Ñ Ð¾Ð´Ð½Ð¸Ð¼ аÑгÑменÑом Ñипа Scanner. ÐаннÑе в Ñайле Ñ ÑанÑÑÑÑ Ð² ÑледÑÑÑем виде: Ðванов Ðван ÐÐ²Ð°Ð½Ð¾Ð²Ð¸Ñ 31 12 1950 ÐеÑÑов ÐеÑÑ ÐеÑÑÐ¾Ð²Ð¸Ñ 31 12 1957 Ð Ñайле Ñ ÑаниÑÑÑ Ð±Ð¾Ð»ÑÑое колиÑеÑÑво лÑдей, даннÑе одного Ñеловека Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑ Ð² одной ÑÑÑоке. ÐеÑод read() должен ÑиÑаÑÑ Ð´Ð°Ð½Ð½Ñе ÑолÑко одного Ñеловека. ТÑебованиÑ: 1.âPersonScanner должен бÑÑÑ Ð¸Ð½ÑеÑÑейÑом. 2.âÐлаÑÑ PersonScannerAdapter должен ÑеализовÑваÑÑ Ð¸Ð½ÑеÑÑÐµÐ¹Ñ PersonScanner. 3.âÐлаÑÑ PersonScannerAdapter должен ÑодеÑжаÑÑ Ð¿ÑиваÑное поле fileScanner Ñипа Scanner. 4.âÐлаÑÑ PersonScannerAdapter должен ÑодеÑжаÑÑ ÐºÐ¾Ð½ÑÑÑÑкÑÐ¾Ñ Ñ Ð¿Ð°ÑамеÑÑом Scanner. 5.âÐеÑод close() клаÑÑа PersonScannerAdapter должен делегиÑоваÑÑ Ð¿Ð¾Ð»Ð½Ð¾Ð¼Ð¾Ñие ÑÐ°ÐºÐ¾Ð¼Ñ Ð¶Ðµ меÑÐ¾Ð´Ñ fileScanner. 6.âÐеÑод read() клаÑÑа PersonScannerAdapter должен ÑиÑаÑÑ ÑÑÑÐ¾ÐºÑ Ñ Ñайла, паÑÑиÑÑ ÐµÑ, и возвÑаÑаÑÑ Ð´Ð°Ð½Ð½Ñе ÑолÑко одного Ñеловека, в виде обÑекÑа клаÑÑа Person. ---------------------------------------------------Solution.java-------------------------------------------------------------- package com.javarush.task.task19.task1904; import java.io.IOException; import java.util.Scanner; /* РеÑе один адапÑÐµÑ */ public class Solution { public static void main(String[] args) { } public static class PersonScannerAdapter { } } ------------------------------------------------------------------------------------------------------------------------------ ---------------------------------------------------Person.java---------------------------------------------------------------- package com.javarush.task.task19.task1904; import java.util.Date; public class Person { private String firstName; private String middleName; private String lastName; private Date birthDate; public Person(String firstName, String middleName, String lastName, Date birthDate) { this.firstName = firstName; this.middleName = middleName; this.lastName = lastName; this.birthDate = birthDate; } @Override public String toString() { return String.format("%s %s %s %s", lastName, firstName, middleName, birthDate.toString()); } } ------------------------------------------------------------------------------------------------------------------------------ ----------------------------------------------------PersonScanner.java-------------------------------------------------------- package com.javarush.task.task19.task1904; import java.io.IOException; public interface PersonScanner { Person read() throws IOException; void close() throws IOException; } ------------------------------------------------------------------------------------------------------------------------------ */