Класс FileSystemEntity
Класс FileSystemEntity представляет собой абстрактный базовый класс
для всех объектов файловой системы в Dart. От него наследуются такие
классы, как File, Directory и Link. Этот класс
предоставляет общие свойства и методы, которые применимы к любому
объекту файловой системы: проверка типа объекта, получение пути,
получение абсолютного пути, проверка существования и другие.
Основное свойство path хранит путь к объекту файловой системы.
Свойство absolute возвращает объект с абсолютным путем.
Свойство parent возвращает родительскую директорию.
Свойство uri возвращает URI объекта.
Синтаксис
FileSystemEntity
Свойства
Класс FileSystemEntity имеет следующие основные свойства:
path // путь к объекту
absolute // абсолютный путь
parent // родительская директория
uri // URI объекта
Методы
Класс FileSystemEntity предоставляет следующие основные методы:
exists() // проверяет существование
existsSync() // синхронная проверка существования
isFileSync() // проверяет, является ли объект файлом
isDirectorySync() // проверяет, является ли объект директорией
isLinkSync() // проверяет, является ли объект ссылкой
typeSync() // возвращает тип объекта
delete() // удаляет объект
deleteSync() // синхронно удаляет объект
rename() // переименовывает объект
renameSync() // синхронно переименовывает объект
resolveSymbolicLinks() // разрешает символические ссылки
resolveSymbolicLinksSync() // синхронно разрешает ссылки
Пример
Давайте создадим объект File, который наследуется от
FileSystemEntity, и проверим его основные свойства:
import 'dart:io';
void main()
{
FileSystemEntity entity = File('test.txt');
print(entity.path);
print(entity is File);
print(entity is Directory);
print(entity is Link);
}
Результат выполнения кода:
"test.txt"
true
false
false
Пример
Давайте проверим тип объекта файловой системы с помощью
метода typeSync и методов isFileSync и
isDirectorySync:
import 'dart:io';
void main()
{
FileSystemEntity entity = Directory('my_folder');
print(entity.isFileSync());
print(entity.isDirectorySync());
print(entity.typeSync());
}
Результат выполнения кода:
false
true
FileSystemEntityType.directory
Пример
Давайте получим абсолютный путь и родительскую директорию для объекта файловой системы:
import 'dart:io';
void main()
{
FileSystemEntity entity = File('test.txt');
print(entity.absolute.path);
print(entity.parent.path);
print(entity.uri);
}
Результат выполнения кода:
"/home/user/test.txt"
"/home/user"
file:///home/user/test.txt
Пример
Давайте создадим файл и проверим его существование
с помощью методов exists и existsSync,
а затем удалим его:
import 'dart:io';
void main()
{
FileSystemEntity entity = File('test.txt');
entity.createSync();
print(entity.existsSync());
print(entity is File);
entity.deleteSync();
print(entity.existsSync());
}
Результат выполнения кода:
true
true
false
Смотрите также
-
класс
File,
который представляет файл в файловой системе -
метод
isFileSync,
который проверяет, является ли объект файлом -
метод
isDirectorySync,
который проверяет, является ли объект директорией -
метод
typeSync,
который возвращает тип объекта файловой системы