JavaRush
AI Academy
new
Акція
Університет
Java FullStack
Python FullStack
AI Native Developer
new
Навчання
Курси
Задачі
Опитування
Ігри
Допомога
Графік стусанів
Стажування
Спільнота
Користувачі
Форум
Чат
Статті
Історії успіху
Дії
Відгуки
Передплати
Світла тема

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Права та доступ до файлової системи

    JAVA 25 SELF
    38 рівень, 3 лекція
    У цій лекції розбираємо, як ОС керує правами доступу (POSIX і ACL у Windows), чому в Java виникає виняток AccessDeniedException, як і коли використовувати перевірки Files.isReadable(), Files.isWritable(), Files.isExecutable(), і чим небезпечний TOCTOU. Показано шаблон «безпечного запису»: тимчасовий файл + атомарне переміщення через StandardCopyOption.ATOMIC_MOVE, коректна обробка помилок через try- catch і логування ( java.util.logging). Наприкінці — практичні поради та типові помилки.
    Відкрита
  • Найкращі практики роботи з файлами

    JAVA 25 SELF
    38 рівень, 4 лекція
    Практичний посібник із надійної та безпечної роботи з файловою системою в Java: коректне оброблення винятків ( try/ catch, окремі реакції на IOException, AccessDeniedException), акуратне використання API Files/ Path і резервних копій ( Files.copy з StandardCopyOption.REPLACE_EXISTING), тимчасових файлів ( Files.createTempFile), контроль цілісності ( MessageDigest.getInstance( "SHA-256")), а також мінімізація вікон TOCTOU і повсюдне застосування try-with-resources. Ви дізнаєтеся, чому порожній catch небезпечний, як працювати з правами доступу ( File.canRead()/ File.canWrite()) і чим загрожують відносні шляхи на кшталт File( "data.txt").
    Відкрита
  • NIO2: Files, Paths, Files.walk: обхід файлової системи

    JAVA 25 SELF
    39 рівень, 0 лекція
    Глибокий розбір файлового API NIO2: робота зі шляхами через Path та класом утиліт Files, обхід дерева директорій за допомогою Files.walk та інтерфейсу FileVisitor, фільтрація й пошук, підрахунок розмірів і копіювання, try-with-resources і обробка IOException. Порівняємо зі старим File-API та розберемо типові помилки під час роботи з потоками Stream<Path>.
    Відкрита
  • Класи File, Path, Files: отримання інформації про файли

    JAVA 25 SELF
    39 рівень, 1 лекція
    Короткий і практичний огляд API роботи з файлами: від ветерана File до сучасних Path і Files із пакета java.nio.file. Розберемо перевірку існування, тип (файл/директорія), розміри, шляхи, базові атрибути та права доступу. Покажемо, коли й чому варто надавати перевагу Path/ Files, як коректно обробляти IOException і які помилки найчастіше трапляються на практиці.
    Відкрита
  • Глобінг/PathMatcher, DirectoryStream.Filter

    JAVA 25 SELF
    39 рівень, 2 лекція
    Практична лекція з вибірки файлів у NIO2: порівняємо glob і regex, навчимося використовувати PathMatcher, фільтрувати вміст директорій через Files.newDirectoryStream і DirectoryStream.Filter<Path>, а також виконувати рекурсивний пошук за допомогою Files.walk() та вибірки за умовами з Files.find() і BiPredicate<Path, BasicFileAttributes>. Обговоримо нюанси шаблонів ( "**/*.java", "*.{png,jpg}"), продуктивність і типові помилки закриття ресурсів.
    Відкрита
  • FileVisitor — обхід файлової системи та рекурсивні операції

    JAVA 25 SELF
    39 рівень, 3 лекція
    У цій лекції розглянемо поглиблений обхід файлової системи в Java: чим відрізняється потоковий обхід через Files.walk() від подієвого API Files.walkFileTree(), як працює контракт FileVisitor<T> і зручний адаптер SimpleFileVisitor<T>, які результати повертає FileVisitResult ( CONTINUE, SKIP_SUBTREE, SKIP_SIBLINGS, TERMINATE), як коректно виконувати рекурсивне видалення, підрахунок розміру, пошук за маскою та обробляти помилки, а також які типові помилки трапляються на практиці.
    Відкрита
  • Отримання та зміна атрибутів файлів

    JAVA 25 SELF
    39 рівень, 4 лекція
    Практичний посібник з роботи з метаданими файлів через API java.nio.file.attribute: читаємо базові атрибути за допомогою Files.readAttributes і BasicFileAttributes, розглядаємо розширені POSIX/ DOS атрибути через PosixFileAttributes і DosFileAttributes, змінюємо час і права ( FileTime, PosixFilePermissions, Files.setLastModifiedTime, Files.setAttribute). Також — перевірка доступу ( Files.isReadable/ isWritable/ isExecutable), кросплатформні нюанси ( dos:* vs posix:*) та типові помилки.
    Відкрита
  • Створення та видалення файлів і папок

    JAVA 25 SELF
    40 рівень, 0 лекція
    Практичний вступ до файлового API Java: працюємо з java.nio.file, створюємо файли та папки через Files.createFile, Files.createDirectory і Files.createDirectories, видаляємо — за допомогою Files.delete і Files.deleteIfExists. Обговоримо перевірки існування ( Files.exists, Path.of), типові винятки ( FileAlreadyExistsException, NoSuchFileException, DirectoryNotEmptyException, IOException) і безпечне видалення, включно з рекурсивним для непорожніх папок.
    Відкрита
  • Копіювання та переміщення файлів і папок

    JAVA 25 SELF
    40 рівень, 1 лекція
    Як копіювати, переміщувати та перейменовувати файли й папки за допомогою Files.copy і Files.move з пакета java.nio.file; які опції використовувати ( StandardCopyOption.REPLACE_EXISTING, COPY_ATTRIBUTES, атомарне переміщення), чим відрізняється copy від move, та як коректно обробляти винятки: FileAlreadyExistsException, AccessDeniedException, AtomicMoveNotSupportedException, NoSuchFileException. Плюс практичні поради та таблиці щодо основних методів і опцій.
    Відкрита
  • Масові операції з файлами

    JAVA 25 SELF
    40 рівень, 2 лекція
    Практика роботи з файлами через NIO.2: як обходити каталоги за допомогою Files.list і Files.walk, фільтрувати потоки шляхів за допомогою Stream<Path> і операцій filter, sorted, limit. Масові дії: копіювання ( Files.copy), видалення ( Files.delete), перейменування ( Files.move) із безпечною обробкою помилок у циклі та з урахуванням продуктивності під час рекурсивного обходу. Таблиця з основними методами та розділ «Типові помилки» допоможуть уникнути підводних каменів.
    Відкрита
  • Робота з тимчасовими файлами та директоріями

    JAVA 25 SELF
    40 рівень, 3 лекція
    У лекції розбираємо, як безпечно створювати й очищати тимчасові ресурси: файли через Files.createTempFile і директорії через Files.createTempDirectory, куди вони потрапляють за замовчуванням і як вказати власну папку. Покажемо надійне видалення за допомогою Files.delete/ Files.deleteIfExists, коли доречний легасі‑метод File.deleteOnExit(), як отримати шлях до системної temp‑папки через System.getProperty( "java.io.tmpdir") і чому важливо використовувати конструкції try- finally для гарантованого очищення. Наприкінці — практичні поради та типові помилки.
    Відкрита
  • Стеження за змінами у файловій системі: WatchService

    JAVA 25 SELF
    40 рівень, 4 лекція
    У лекції розглядаємо API стеження за файловою системою з NIO.2 — WatchService: як отримати сервіс, зареєструвати теку через Path.register(...), які події доступні ( ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY) та як організувати цикл обробки ( WatchService.take() → key.pollEvents() → key.reset()). Обговоримо обмеження (без рекурсивного стеження за замовчуванням), особливості на Windows/Linux/macOS, приклади практичного застосування та типові помилки.
    Відкрита
  • 1
  • ...
  • 17
  • 18
  • 19
  • 20
  • 21
  • ...
  • 57
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush