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

  • 5
  • Недоступна
Старая задача: вводится 2 имени файла, первый файл копируется на место, заданное вторым именем. Новая задача: вводится 2 имени файла, первый файл копируется на место, заданное вторым именем. Если файла, который нужно копировать, не существует, то программа об этом сообщает и еще раз читает имя файла с консоли, а уже потом считывает файл для записи.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (141)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Дмитрий Метельский15 уровень, Минск
9 апреля, 20:34
Нет слов...одни маты))) Товарищь S всё разжевал) Я думаю мало кто догадается в чём прикол задачи)))
Павел14 уровень, Санкт-Петербург
9 апреля, 17:17
блин че за херня то.... http://prntscr.com/n9omoa как мне по новой загрузить проект джава раш что бы через идею решать? а то и тут не могу и там тоже...
fedor18 уровень, Москва
4 апреля, 21:19
жесть конечно условия. сделал все по ТЗ и не прошло. в итоге нужно чтобы эти две строки были строго после try{} catch{}
String destinationFileName = reader.readLine();
OutputStream fileOutputStream = getOutputStream(destinationFileName);
Максим15 уровень
28 марта, 14:40
Требования к задаче просто жесть. Наверное готовят нас к суровой действительности общения между программистом и заказчиком.
Pavel Kurashov12 уровень, Новосибирск
27 марта, 14:25
Где у этого валидолоратора кнопка? Файл копируется, проверял лично, а он сомневается: Проверь, что программа успешно копирует содержимое, если первый раз было введено имя несуществующего файла. UPD: разобрался - валидатор хочет проверять файл источник сразу на его существование... что в общем-то логично )
Anastasia15 уровень, Нижний Новгород
19 марта, 14:59
Еще одна задачка, где 10 минут вникаешь в условие и за 2 минуты пишешь само решение. "Считывать файл для записи" - как она должна его считывать этот файл, если файла-источника не нашла? Потом дошло, что считывать имя.
Владлен19 уровень, Санкт-Петербург
16 марта, 16:05
2 часа сношал мозг себе, почему не работает, прям совсем не работает...прям на верное имя файла выдавалось "Файл не существует.", а при повторном вводе этого же или любого другого вылетал Exception. В итоге прочитал кучу комментариев, и понял, что у меня вроде то же самое написано. Предложил валидатору проверить, чтобы он помог найти мне ошибку: прошло, нет ошибок...Странный он - валидатор.
Hexronimo17 уровень
12 марта, 21:13
"И еще ОДИН раз прочитать имя файла с консоли..." - только ОДИН! Потом, видимо, ваша клавиатура будет заблокирована на 24 часа -_-
Владислав17 уровень, Москва
2 марта, 20:31
Требования к задаче не соответствуют условию. Я могу собрать объект File с адресом первого файла и опросить .exists() у получившегося объекта. Это выглядит самым вменяемым решением (проверь, есть ли файл, а потом его читай!), но валик не принимает. В задаче нигде не описано, что создание потока ввода из файла надо переносить выше, сразу после запроса имени первого файла. Логично было обернуть его там, где он есть и запрашивать новое имя, из которого сразу и поток заново собирать. Но валик так не хочет, а как он хочет — не написано.
S20 уровень, Минск
28 февраля, 14:14
Объясняю по-человечески. 1) Следующей строкой после создания объекта BufferedReader объявляете ссылочную переменную типа InputStream:
InputStream fileInputStream;
Если переменную не объявить, в после try - в блоке while она не будет видна. 2) Две строки по считыванию имени файла и чтению файла оборачиваете в try:
String sourceFileName =...
 fileInputStream =...
3) В catch (IOException e) выводим сообщение в консоль "Файл не существует", а также повторно считываем имя файла и читаем его (то есть вставляем эти же две строки как в try) 4) После блока catch идет дальнейший код данной программы - считывание из консоли имени файла для вывода, чтение файла в поток, блок while и т.д.
String destinationFileName = reader.readLine();
        OutputStream fileOutputStream = getOutputStream(destinationFileName);
while ....
Dmitrii13 уровень
6 марта, 19:50
Я сделал так же, за исключением пункта 3. Сообщение вывел так же, а повторное считывание и присваивание засунул в finally. В результате: Рекомендация от ментора: Проверь, что программа успешно копирует содержимое, если первый раз было введено имя несуществующего файла. Не понимаю в чем разница.
Иван Ващенко10 уровень, Москва
22 марта, 20:18
Спасибо тебе добрый человек!
Семён20 уровень, Екатеринбург
28 марта, 18:08
сделал всё точно так же, но у меня не компилируется Error:(15, 25) java: variable fileInputStream is already defined in method main(java.lang.String[]) Error:(20, 25) java: variable fileInputStream is already defined in method main(java.lang.String[])
Botakoz Utebaliyeva10 уровень, Алматы
7 апреля, 06:14
Спасибо добрый и крутой человек!!! за человеческое объяснение и интерпретацию ТЗ!!
Svetlana Kirienko13 уровень
18 апреля, 14:21
Низкий поклон!!