FileSystemEntity class

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

absoluteFileSystemEntity
read-only
A FileSystemEntity whose path is the absolute path of path. [...]
hashCodeint
read-only, inherited
The hash code for this object. [...]
isAbsolutebool
read-only
Whether this object's path is absolute. [...]
parentDirectory
read-only
The parent directory of this entity.
pathString
read-only
runtimeTypeType
read-only, inherited
A representation of the runtime type of the object.
uriUri
read-only
A Uri representing the file system entity's location. [...]

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
inherited
Invoked when a non-existent method or property is accessed. [...]
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
inherited
A string representation of this object. [...]
watch({int events = FileSystemEvent.all, bool recursive = false}) → Stream<FileSystemEvent>
Start watching the FileSystemEntity for changes. [...]

Operators

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

Static Properties

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

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. [...]

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dart.dev/stable/2.13.0/dart-io/FileSystemEntity-class.html