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

Лекції

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

    JAVA 25 SELF
    38 рівень, 0 лекція
    Як улаштована ієрархія IO‑винятків у Java, у чому різниця між IOException і його нащадком FileNotFoundException, коли вони виникають і як їх правильно обробляти. Розберемо порядок блоків catch, практику читання і запису файлів, поради щодо логування, а також коротку таблицю найпоширеніших помилок. Торкнемося перевірюваних винятків, ключових слів try, catch, finally, throws та прийому try-with-resources.
    Відкрита
  • Перевірка існування файлів і тек

    JAVA 25 SELF
    38 рівень, 1 лекція
    Як у Java перевірити, чи існує файл або тека: клас File із методами exists(), isFile(), isDirectory() і сучасний підхід NIO через Path і Files — Files.exists(), Files.isRegularFile(), Files.isDirectory(). Обговоримо проблему TOCTOU і чому перевірка не замінює обробку помилок: навіть після exists() ви можете отримати FileNotFoundException або AccessDeniedException, тому завжди використовуйте блоки try і за можливості try-with-resources. Плюс практика: читання файлу за наявності, створення теки через Files.createDirectory() і Files.createDirectories(), робота з відносними та абсолютними шляхами.
    Відкрита
  • Обробка пошкоджених файлів, відновлення даних

    JAVA 25 SELF
    38 рівень, 2 лекція
    Як розпізнати «биті» файли за винятками ( EOFException, MalformedInputException, ZipException, StreamCorruptedException), що робити у разі невідповідності формату та які стратегії відновлення застосовувати: логування та сповіщення користувача, часткове читання до помилки, резервні копії, контрольні суми ( SHA-256). Практика з читанням до EOF, коректна робота з кодуваннями та розбір типових помилок (валідація, try-with-resources, акуратне перезаписування).
    Відкрита
  • Права та доступ до файлової системи

    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").
    Відкрита
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush