Керування каталогами та шляхами

Ввід/вивід і потоки в Java

Alex Liu

Software Developer Engineer

Ключова ідея

  • Каталоги впорядковують файли й дані
  • Шляхи вказують розташування файлів і каталогів
  • Клас File може представляти файл або каталог
    • Створюваний ресурс залежить від методу (mkdir() для каталогів, createNewFile() для файлів)

Монітор комп'ютера з піктограмами каталогів

Ввід/вивід і потоки в Java

Створення каталогів

  • Імпортуйте клас File
    import java.io.File;
    
  • Створює об'єкт File, що представляє каталог
    File newDirectory = new File("myDirectory");
    
  • Використайте .mkdir() для створення реального каталогу у файловій системі
    boolean created = newDirectory.mkdir();
    
  • Повертає true, якщо каталог успішно створено
  • Повертає false, якщо каталог уже існує або не може бути створений
Ввід/вивід і потоки в Java

Список файлів у каталозі

  • Використайте .listFiles() для отримання списку файлів у каталозі

$$

// Створює об'єкт `File`, що представляє каталог `myDirectory`
File dir = new File("myDirectory");
// Повертає `масив` об'єктів `File`, що представляють вміст `myDirectory`
File[] files = dir.listFiles();
  • Повертає масив об'єктів File, якщо каталог існує
  • Повертає null, якщо каталогу не існує
Ввід/вивід і потоки в Java

Отримання відносного шляху файла

  • Відносний шлях: розташування файлу/каталогу відносно поточного робочого каталогу
// Створює об'єкт `File` для `sample.txt` у `myDirectory`
File file = new File("myDirectory/sample.txt");
// Отримує відносний шлях файла як String
String path = file.getPath();
System.out.println(path);
  • Припускаємо, що myDirectory вже існує; інакше створення чи запис файла не вдасться

  • Вивід:

    myDirectory/sample.txt
    
Ввід/вивід і потоки в Java

Робота з абсолютними шляхами

  • Абсолютний шлях: повний шлях від кореня файлової системи

$$

// Створює об'єкт `File` для `sample.txt` у `myDirectory`
File file = new File("myDirectory/sample.txt");
// Отримує абсолютний шлях файла як String
String absPath = file.getAbsolutePath();
System.out.println(absPath);
  • Вивід:
/user/home/myDirectory/sample.txt
Ввід/вивід і потоки в Java

Давайте потренуємось!

Ввід/вивід і потоки в Java

Preparing Video For Download...