FileSystemEntity class
The common super class for File, Directory, and Link objects.
FileSystemEntity objects are returned from directory listing operations. To determine if 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 occur in synchronous and asynchronous pairs, 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:
entity.exists().then((isThere) {
isThere ? print('exists') : print('non-existent');
});
Other resources
-
Dart by Example provides additional task-oriented code samples that show how to use various API from the Directory class and the File class, both subclasses of FileSystemEntity.
-
I/O for Command-Line Apps, a section from A Tour of the Dart Libraries covers files and directories.
-
Write Command-Line Apps, a tutorial about writing command-line apps, includes information about files and directories.
Constructors
Properties
- absolute → FileSystemEntity
-
Returns a FileSystemEntity whose path is the absolute path to this. [...]
read-only
- isAbsolute → bool
-
Returns a bool indicating whether this object's path is absolute. [...]
read-only
- parent → Directory
-
The directory containing this.
read-only
- path → String
-
read-only
- uri → Uri
-
Returns a Uri representing the file system entity's location. [...]
read-only
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
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. Returns
a
Future<bool>
that completes with the result. [...] -
existsSync(
) → bool - Synchronously checks whether the file system entity with this path exists. [...]
-
rename(
String newPath) → Future< FileSystemEntity> - Renames this file system entity. [...]
-
renameSync(
String newPath) → FileSystemEntity - Synchronously renames this file system entity. [...]
-
resolveSymbolicLinks(
) → Future< String> - 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 the path of this FileSystemEntity. [...]
-
statSync(
) → FileStat - Synchronously calls the operating system's stat() function on the path of this FileSystemEntity. [...]
-
watch(
{int events: FileSystemEvent.all, bool recursive: false }) → Stream< FileSystemEvent> - Start watching the FileSystemEntity for changes. [...]
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toString(
) → String -
Returns a string representation of this object.
inherited
Operators
-
operator ==(
dynamic 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> - Checks if type(path) returns FileSystemEntityType.directory.
-
isDirectorySync(
String path) → bool - Synchronously checks if typeSync(path) returns FileSystemEntityType.directory.
-
isFile(
String path) → Future< bool> - Checks if type(path) returns FileSystemEntityType.file.
-
isFileSync(
String path) → bool - Synchronously checks if typeSync(path) returns FileSystemEntityType.file.
-
isLink(
String path) → Future< bool> - Checks if type(path, followLinks: false) returns FileSystemEntityType.link.
-
isLinkSync(
String path) → bool - Synchronously checks if typeSync(path, followLinks: false) returns FileSystemEntityType.link.
-
parentOf(
String path) → String - Removes the final path component of a path, using the platform's path separator to split the 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. [...]