Проход по дереву файлов

  • 11
  • Недоступна
1. На вход метода main подаются два параметра. Первый - path - путь к директории, второй - resultFileAbsolutePath - имя (полный путь) существующего файла, который будет содержать результат. 2. Переименовать resultFileAbsolutePath в 'allFilesContent.txt' (используй метод FileUtils.renameFile, и, если понадобится, FileUtils.isExist).
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (224)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Роман26 уровень, Казань
воскресенье, 17:47
Такой код принимает
File contentFile = new File(resultFile.getParent() + "/allFilesContent.txt");
Такой код не принимает
File contentFile = new File(resultFile.getParentFile(), "allFilesContent.txt");
Почему так происходит, я не могу понять.
Сергей Миничев22 уровень, Опочка
13 августа, 13:20
File resultFileAbsolutePath = new File(args[1]);
выдает ошибку "Error: Could not find or load main class D:.temp" В аргументах у меня D:/temp D:/temp/result.txt Помогите пожалуйста, чего оно от меня хочет?
нежный22 уровень, Одесса
12 августа, 19:00
Если не проходит по пункту с закрытием потока, хотя всё закрыто, оберните в try-catch-finally. В блоке try читайте с файла и пишите содержимое, а в блоке finally закройте поток, тоже обернув через try-catch. Иначе валидатор не принимал. Ибо он отвратительный.
Pavlo Plynko40 уровень, Киев
13 августа, 09:17
Еще try с ресурсами можно использовать.
Иван Сапронов32 уровень, Ставрополь
26 июля, 14:35
Это - жесть! 4 разных работающих варианта решения, 4 часа напрасно потраченного времени, и всё - в пустых попытках угодить валидатору! У меня уже задёргался глаз, мать-перемать... Уважаемые Разработчики Javarush.ru, ПОЧИНИТЕ чёртов валидатор! Его требования не отвечают условиям задачи, а подсказки ещё больше вводят в заблуждение. Задача-то простая. Но люди тратят нервы на ней почём зря, а они, как известно не восстанавливаются. Столько комментариев ниже об этом и всё без толку, вы их хоть читаете?
Alex40 уровень
27 июля, 07:28
Отправьте Ваши решения на support@javarush.ru, пожалуйста, для рассмотрения.
Иван Сапронов32 уровень, Ставрополь
27 июля, 09:39
Спасибо, но я их не сохранил. Делал через Files.walkFileTree(), не приняло. Потом через рекурсию - не приняло. Потом плюнул, скопировал у камрада ниже в каментах готовое решение - не приняло. Всё переделал опять через рекурсию - приняло. Самое удивительное - это подсказки Валидатора - совершенно не отражают реальность.
Артем Муравьев28 уровень, Санкт-Петербург
1 августа, 13:23
там указано что формат .txt значит что бы добавить переход на новую строку, нужно дописать "\r\n" , но валидатор пропустил только "\n". Почему?
Justinian36 уровень, Киев
2 августа, 18:40
валидатор работает не на винде
Ivan32 уровень
25 июля, 07:05
Интересно кто как создавал OutputStream, как мне кажется валидатор не совсем корректное решение принимает если поток для записи сделать используя такой конструктор:
new FileOutputStream(File file)
то содержимое переименованного файла обнулится. Мне кажется правильно использовать такой конструктор:
new FileOutputStream(File file, boolean append)
это позволит сохранить содержимое переименованного файла, даже при условии что файл будет больше чем 50 байт, при попытке удаления файла, в консоль получим следующее сообщение:
Can not delete file with name allFilesContent.txt
Pavlo Plynko40 уровень, Киев
12 августа, 07:51
Для тех кто в будущем будет решать эту задачу: для валидатора не играет роли, дописать в allFilesContent.txt или перетереть.
Max28 уровень
23 июля, 20:23
Алгоритм каждый выбирает сам, но я сделал так: Рекурсивно обходил папки : =Если элемент папка то вызываю сам себя с новой папкой =Если элемент файл и <=50 и содержит ".тхт" до добавляем в структуру данных На выходе получаем отсортированную структуру и нам только остается открыть out и перебором открывать все файлы из структуры переписывать содержимое в out и добавлять в конце out.write(10);
Сергій32 уровень, Киев
14 июля, 14:09
На картинке, которая появляется при тестировании задач в IDE изображен код именно к этой задаче))
Илья26 уровень
воскресенье, 11:02
Они сами свои условия нарушили. На картинке в коде есть статик лист, а в условии задачи - нельзя использовать статические переменные. Пришлось коллекцию по рекурсии протаскивать...
Ярослав Воробець34 уровень, Львов
12 июля, 23:07
валя поглумився, 29 спроб. Не подобалося в якому порядку перейменовую файл...
Dmitry Potamoshnev30 уровень, Москва
10 июля, 15:11
Вот бывает же такое, что с первой попытки. И задачка вроде не сложная и большинство действий тупо через гуглеж можно найти, но прикольно позалипать и придумать своё решение, пусть даже оно будет не самое оптимальное, зато прошло с первой попытки :) ...
Антон22 уровень, Пермь
9 июля, 16:03
Код должен быть только в классе Solution!!! 25 попыток((
Pavlo Plynko40 уровень, Киев
12 августа, 07:37
Не должен.