РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
790 of 1163 menu

Класс Files

Класс Files - это утилитарный класс из пакета java.nio.file, который содержит только статические методы для работы с файловой системой. Через его методы можно создавать, читать, записывать, копировать, перемещать и удалять файлы и директории, а также проверять их свойства: существование, тип, размер, права доступа и время изменения. Все методы класса Files работают с объектами типа Path, который описывает путь к файлу или директории. В первый параметр методов обычно передается путь Path, во второй - дополнительные параметры, например, содержимое для записи или опции копирования.

Класс Files не нужно создавать через new - все его методы вызываются напрямую через имя класса.

Синтаксис

import java.nio.file.Files; import java.nio.file.Path; Files.methodName(path, [additionalParams])

Пример

Давайте создадим файл и запишем в него строку, а затем прочитаем ее обратно:

import java.nio.file.Files; import java.nio.file.Path; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { Path path = Path.of("test.txt"); Files.writeString(path, "abcde"); String res = Files.readString(path); System.out.println(res); } }

Результат выполнения кода:

"abcde"

Пример

Давайте проверим, существует ли файл, является ли он обычным файлом и каков его размер:

import java.nio.file.Files; import java.nio.file.Path; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { Path path = Path.of("test.txt"); Files.writeString(path, "abcde"); System.out.println(Files.exists(path)); System.out.println(Files.isRegularFile(path)); System.out.println(Files.size(path)); } }

Результат выполнения кода:

true true 5

Пример

Давайте создадим директорию, скопируем в нее файл и получим список ее содержимого:

import java.nio.file.Files; import java.nio.file.Path; import java.io.IOException; import java.util.List; import java.util.stream.Stream; public class Main { public static void main(String[] args) throws IOException { Path dir = Path.of("mydir"); Files.createDirectory(dir); Path file = Path.of("test.txt"); Files.writeString(file, "abcde"); Path copy = dir.resolve("copy.txt"); Files.copy(file, copy); List<String> res = Files.list(dir) .map(p -> p.getFileName().toString()) .toList(); System.out.println(res); } }

Результат выполнения кода:

[copy.txt]

Пример

Давайте прочитаем все строки файла в список:

import java.nio.file.Files; import java.nio.file.Path; import java.io.IOException; import java.util.List; public class Main { public static void main(String[] args) throws IOException { Path path = Path.of("test.txt"); Files.writeString(path, "abcde\n12345"); List<String> res = Files.readAllLines(path); System.out.println(res); } }

Результат выполнения кода:

[abcde, 12345]

Пример

Давайте удалим файл и проверим, что он больше не существует:

import java.nio.file.Files; import java.nio.file.Path; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { Path path = Path.of("test.txt"); Files.writeString(path, "abcde"); Files.delete(path); System.out.println(Files.exists(path)); } }

Результат выполнения кода:

false

Смотрите также

  • метод exists,
    который проверяет существование файла
  • метод readString,
    который читает содержимое файла в строку
  • метод writeString,
    который записывает строку в файл
  • метод delete,
    который удаляет файл или директорию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить