Метод size
Метод size класса Files возвращает размер файла
в байтах. В единственный параметр мы передаем путь к файлу
в виде объекта Path. Если файл не существует,
метод выбрасывает исключение IOException.
Метод не подходит для определения размера директорий -
для директорий результат работы метода не определен.
Синтаксис
Files.size(path)
Пример
Давайте создадим файл, запишем в него строку и узнаем размер файла в байтах:
import java.nio.file.Files;
import java.nio.file.Path;
public class Main
{
public static void main(String[] args) throws Exception
{
Path path = Path.of("test.txt");
Files.writeString(path, "abcde");
long res = Files.size(path);
System.out.println(res);
}
}
Результат выполнения кода:
5
Пример
Давайте сравним размер файла с ожидаемым значением:
import java.nio.file.Files;
import java.nio.file.Path;
public class Main
{
public static void main(String[] args) throws Exception
{
Path path = Path.of("test.txt");
Files.writeString(path, "12345");
if (Files.size(path) == 5) {
System.out.println("size is correct");
} else {
System.out.println("size is wrong");
}
}
}
Результат выполнения кода:
"size is correct"
Пример
Давайте получим размер файла, который не существует, и обработаем исключение:
import java.nio.file.Files;
import java.nio.file.Path;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
Path path = Path.of("missing.txt");
try {
long res = Files.size(path);
System.out.println(res);
} catch (IOException e) {
System.out.println("file not found");
}
}
}
Результат выполнения кода:
"file not found"
Смотрите также
-
класс
Files,
который содержит методы для работы с файлами -
метод
exists,
который проверяет существование файла -
метод
isRegularFile,
который проверяет, является ли путь обычным файлом -
метод
readAllBytes,
который читает все байты из файла