Учитель zapp

Обогатим код функциональностью!

  • 6
  • Недоступна
Старая задача: вводится 2 имени файла, первый файл копируется на место, заданное вторым именем. Новая задача: вводится 2 имени файла, первый файл копируется на место, заданное вторым именем. Если файла, который нужно копировать, не существует, то программа об этом сообщает и еще раз читает имя файла с консоли, а уже потом считывает файл для записи.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (176)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Денис К10 уровень, Москва
позавчера, 20:53
Всем кто подзастрял на ошибке "Программа должна копировать содержимое первого файла во второй." посвящается. Перенесите блок после try catch.
String destinationFileName = reader.readLine();
Дмитрий Умнов9 уровень, Ульяновск
вчера, 19:24
Хорошо было бы понять, почему это влияет на решение. Или это придирки валидатора?
Andrii10 уровень
позавчера, 11:12
Я, как говориться "дико извиняюсь". Сам читал кучу комментов с жалобами на некорректность постановки задачи . И признаться, до сих пор думал , что это дело сугубо индивидуальное. Тем более , что сам, когда решал их, не разделял подобных жалоб. И считал, что все норм с постановкой, вчитывайтесь мол внимательно. Даже если не ясно, то найдя решение, в итоге это нас должно натолкнуть на полезные мысли. Но этот экземпляр, чемпион среди некорректных формулировок. Еслиб не коммент Айдар , то даже не знаю. Курсом ооочень увлечен, и спасибо разработчикам. Огромная просьба к команде поддержки. устройте что-ли фокус-группы на адекватность постановки задач что-ли. Хотя конечно это мое субъективное мнение.
Valery Lvov9 уровень, Москва
11 сентября, 07:02
Почему нельзя считывание имени второго (destination) файла, копирование файла и вот это fileInputStream.close(); (закрытие потока?) оформить в finally{} , ведь это блок, который должен исполняться при любом развитии событий? PS спасибо комментаторам, по сумме подсказок уловил суть формулировки задания
Артур Шанаев14 уровень
4 сентября, 15:26
Вы решили задачу лучше, чем 4% учеников. Вам удалось ее решить с 11 попытки. При том что работала программа и файл копировала и выполняла все условия, валидацию не проходила. Мой антирекорд )
Yuri Serebryakov15 уровень
30 августа, 14:55
А вот у меня вопрос. Метод (getInputStream) бросает ошибку, мы ее отлавливаем и обрабатываем. Но в таком случае мы можем ввести только два раза. Введя третий раз не правильный путь, программа падает. Как реализовать бесконечную проверку?
Дмитрий15 уровень, Краснодар
28 августа, 21:13
Всё настолько просто вот добавьте перед try InputStream fileInputStream = null; и всё никаких циклов не нужно и бубнов. А далее в try catch суем уже fileInputStream без InputStream
Павел Минеев31 уровень, Челябинск
20 августа, 17:47
Война с валидатором, а не задача.
Егор Батурин12 уровень, Murmansk
19 августа, 20:26
"Проверь, что программа успешно копирует содержимое, если первый раз было введено имя несуществующего файла." СТООООП. Как я могу из несуществующего файла что-то копировать? Это ведь невзможно
Сергей18 уровень, Екатеринбург
19 августа, 16:58
Пока что это - наиболее сложная задача из всех, что были до этого... Чтобы получить исключение - нужно обернуть создание потока в try..catch. А при обертке потока в try..catch дальнейшая работа вне блока попытки-исключения с этим потоком не компилируется. Как быть? Валидатор принял решение, если код копирования файла запихать и в try и в catch - но это же крайне некрасиво...
Alex V. Mel13 уровень, Киев
24 августа, 10:37
То что это не красиво это ерунда. Главное понять логику действий валидатора(автора задачи). Если не помещать в попытку/перехват, то потоки будут(могут быть) не определены, или ещё какие-то причины? Вот в чём вопрос: В чём логика?
Ner'Zhul13 уровень
14 августа, 12:58
Не было лекций по потокам ввода и вывода. Мало того. Некорректно составленные условия задачи. Я в негодовании