Реализуй логику записи в файл и чтения из файла для класса JavaRush.
Пустых полей у объекта User быть не может. Дату в файле удобно хранить в формате long.
Метод main реализован только для тебя и не участвует в тестировании.
Читаем и пишем в файл: JavaRush
- 20
Недоступна
Комментарии (440)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
milyasow
23 июня, 20:45
Во время решения не отпускала мысль, что-же делать с hashcode, ведь у нас два разных экземпляра JavaRush, у каждого из них свой объект List<User> users, значит, по идее, может быть разный hashcode для этих объектов, и они не будут равны. Но нет, все в порядке: hashcode для коллекций вычисляется по содержимому.
0
Сонмониус
20 июня, 19:09
Нормальная задача, но допишите пожалуйста в условие, что дату обязательно нужно хранить в long. Потому что "Дату в файле удобно хранить в формате long", это как бы необязательная рекомендация и мне к примеру удобней было это делать через SimpleDataFormat, но валидатор так не принимает. В требованиях, нигде не прописано, что нужно обязательно делать через long.
0
CyberBoar
14 апреля, 07:19
Задачи этой лекции - первые задачи, которые я тупо скопировал из готового решения.
Без каких либо угрызений совести.
Это не пригодится вообще никогда и нигде.
+2
Nikolay Veselov
3 апреля, 11:36
2 попытки просто потому что забыл сделать перенос строки после первой записанной строки)
0
Салават Шакиров Backend Developer в СберТех
21 марта, 18:06
С датой можно сохранять и получать в long.
save: printWriter.println(user.getBirthDate().getTime());
load: user.setBirthDate(new Date(Long.parseLong(date)));
+3
KOTNinja
7 марта, 16:00
Господи, пол часа сидел, пытался понять, почему в файле оказывается одна запись. Балбес, в методе сэйв класса юзерс, вызывающемся из метода сэйв класса джавараш закрывал райтер, вместо флаша!
+1
Mikhail Efimov
24 февраля, 13:59
Для меня было шоком решить ее с первой попытки, так как в последних задачах валидатор бушует на всякие мелочи, напомню что есть методы PrinStream и PrinrWriter в которых есть метод println, так сможете напрямую работать с потоком и писать построчно с переносом строки, не забываем закрывать потоки для их нормальной работы!
+1
The Body of the Atr
19 февраля, 19:32
Валя не принимала: Логика чтения/записи реализованная в методах save/load должна работать корректно в случае, если список users пустой. - долго не мог понять что же нужно записывать, если записывать нечего, может null? Оказалось, что в методе лоад нужно сделать проверку, что длинна списка >= числа требуемых параметров для юзеров. Тогда Валя согласилась, но осталось непонятным, вот аргументов ноль в списке и метод лоад не отработал - это разве корректно? То есть создал объект явараш, а юзеров не добавил, получается такой объект не сохранится/не загрузится.
0
Сергей Коваленко
20 января, 18:49
раз уж используем в load() BufferedReader, то почему бы не разделять строки "\n" в save().
Тогда в load() можно просто использовать удобный .readLine() вместо распила строки.
0
Михаил Кладовщик с кучей времени
20 января, 10:05
Что за временный файл, и где он расположен можно увидеть при помощи
открывается простым блокнотом +1