FileSystemEntity class Null safety

The common superclass of File, Directory, and Link.

FileSystemEntity objects are returned from directory listing operations. To determine whether a FileSystemEntity is a File, a Directory, or a Link perform a type check:

if (entity is File) (entity as File).readAsStringSync();

You can also use the type or typeSync methods to determine the type of a file system object.

Most methods in this class exist both in synchronous and asynchronous versions, for example, exists and existsSync. Unless you have a specific reason for using the synchronous version of a method, prefer the asynchronous version to avoid blocking your program.

Here's the exists method in action:

var isThere = await entity.exists();
print(isThere ? 'exists' : 'non-existent');

Other resources

Implementers

Constructors

FileSystemEntity()

Properties

absolute FileSystemEntity
A FileSystemEntity whose path is the absolute path of path. [...]
read-only
hashCode int
The hash code for this object. [...]
read-only, inherited
isAbsolute bool
Whether this object's path is absolute. [...]
read-only
parent Directory
The parent directory of this entity.
read-only
path String
read-only
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
uri Uri
A Uri representing the file system entity's location. [...]
read-only

Methods

delete({bool recursive = false}) Future<FileSystemEntity>
Deletes this FileSystemEntity. [...]
deleteSync({bool recursive = false}) → void
Synchronously deletes this FileSystemEntity. [...]
exists() Future<bool>
Checks whether the file system entity with this path exists. [...]
existsSync() bool
Synchronously checks whether the file system entity with this path exists. [...]
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
rename(String newPath) Future<FileSystemEntity>
Renames this file system entity. [...]
renameSync(String newPath) FileSystemEntity
Synchronously renames this file system entity. [...]
Resolves the path of a file system object relative to the current working directory. [...]
resolveSymbolicLinksSync() String
Resolves the path of a file system object relative to the current working directory. [...]
stat() Future<FileStat>
Calls the operating system's stat() function on path. [...]
statSync() FileStat
Synchronously calls the operating system's stat() function on path. [...]
toString() String
A string representation of this object. [...]
inherited
watch({int events = FileSystemEvent.all, bool recursive = false}) Stream<FileSystemEvent>
Start watching the FileSystemEntity for changes. [...]

Operators

operator ==(Object other) bool
The equality operator. [...]
inherited

Static Properties

isWatchSupported bool
Test if watch is supported on the current system. [...]
read-only

Static Methods

identical(String path1, String path2) Future<bool>
Checks whether two paths refer to the same object in the file system. [...]
identicalSync(String path1, String path2) bool
Synchronously checks whether two paths refer to the same object in the file system. [...]
isDirectory(String path) Future<bool>
Whether path] refers to a directory. [...]
isDirectorySync(String path) bool
Synchronously checks whether path refers to a directory. [...]
isFile(String path) Future<bool>
Whether path refers to a file. [...]
isFileSync(String path) bool
Synchronously checks whether path refers to a file. [...]
Whether path refers to a link. [...]
isLinkSync(String path) bool
Synchronously checks whether path refers to a link. [...]
parentOf(String path) String
The parent path of a path. [...]
type(String path, {bool followLinks = true}) Future<FileSystemEntityType>
Finds the type of file system object that a path points to. [...]
typeSync(String path, {bool followLinks = true}) FileSystemEntityType
Synchronously finds the type of file system object that a path points to. [...]