JavaRush
AI Academy
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/сортирует и записывает, но не прохожу один пункт. Хелп пл...
Денис
46 уровень
  • 17.05.2018
  • 1256просмотров
  • 1комментарий

сортирует и записывает, но не прохожу один пункт. Хелп плиз ))

Вопрос по задаче Проход по дереву файлов
Java Collections,  1 уровень,  2 лекция
Архивный

1. На вход метода main() подаются два параметра.
Первый - path - путь к директории, второй - resultFileAbsolutePath - имя (полный путь) существующего файла, который будет содержать результат.
2. Переименовать resultFileAbsolutePath в allFilesContent.txt (используй метод FileUtils.renameFile(), и, если понадобится, FileUtils.isExist()).
3. Для каждого файла в директории path и в ее всех вложенных поддиректориях выполнить следующее:
Если у файла длина в байтах НЕ больше 50, то записать его содержимое в allFilesContent.txt.
После каждого тела файла записать "\n".
Все файлы имеют расширение txt.
В качестве разделителя пути используй "/".
Для создания файлов используй конструктор File(String pathname).

Требования:
  • Файл, который приходит вторым параметром в main, должен быть переименован в allFilesContent.txt.
  • Нужно создать поток для записи в переименованный файл.
  • Содержимое всех файлов, размер которых не превышает 50 байт, должно быть записано в файл allFilesContent.txt.
  • Поток для записи в файл нужно закрыть.
  • Не используй статические переменные.
....
package com.javarush.task.task31.task3101; import java.io.*; import java.util.*; /* Проход по дереву файлов */ public class Solution { public static void main(String[] args) throws IOException { File oldFile = new File(args[1]); File newFile = new File(oldFile.getParent() + "\\allFilesContent.txt"); if (!FileUtils.isExist(newFile)) { FileUtils.renameFile(oldFile, newFile); } File folder = new File(args[0]); File[] arrayFiles = folder.listFiles(); Arrays.sort(arrayFiles); FileWriter fileWriter = new FileWriter(newFile); for (File file : arrayFiles) { try { FileReader fileReader = new FileReader(file); if (file.length() <= 50) { String tempText = ""; while (fileReader.ready()) { int data = fileReader.read(); tempText += (char) data; } fileWriter.write(tempText + "\n"); // для блокнота \r\n } fileReader.close(); } catch (FileNotFoundException e) {} } fileWriter.close(); } }
0
Комментарии (1)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
--------
Уровень 40
Master
17 мая 2018, 21:14решение
2. Для каждого файла в директории path и в ее всех вложенных поддиректориях выполнить следующее... У тебя поддиректории не обрабатываются
+2
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush