File
Description
Represents an individual file that can be watched, read from, and written to.
API documentation
Construction
::constructor(filePath, symlink)
Configures a new File instance.
No files are accessed. The file does not yet need to exist.
| Argument | Description |
|---|---|
filePath
|
A String containing the absolute path to the file. |
symlink
|
optional
A Boolean indicating if the path is a symlink (default: false). |
::create()
Creates the file on disk that corresponds to File::getPath if no such file already exists.
Return values
-
Returns a Promise that resolves once the file is created on disk. It resolves to a boolean value that is
trueif the file was created orfalseif it already existed.
Event Subscription
::onDidChange(callback)
Invoke the given callback when the file’s contents change.
| Argument | Description |
|---|---|
callback
|
Function to be called when the file’s contents change. Takes no arguments. |
Return values
-
Returns a Disposable on which Disposable::dispose can be called to unsubscribe.
::onDidRename(callback)
Invoke the given callback when the file’s path changes.
| Argument | Description |
|---|---|
callback
|
Function to be called when the file’s path changes. Takes no arguments. |
Return values
-
Returns a Disposable on which Disposable::dispose can be called to unsubscribe.
::onDidDelete(callback)
Invoke the given callback when the file is deleted.
| Argument | Description |
|---|---|
callback
|
Function to be called when the file is deleted. Takes no arguments. |
Return values
-
Returns a Disposable on which Disposable::dispose can be called to unsubscribe.
File Metadata
::isFile()
Return values
-
Returns a Boolean; always
true.
::isDirectory()
Return values
-
Returns a Boolean; always
false.
::isSymbolicLink()
Return values
-
Returns a Boolean indicating whether or not this is a symbolic link.
::exists()
Return values
::existsSync()
Return values
-
Returns a Boolean:
trueif the file exists;falseotherwise.
::getDigest()
Get the SHA-1 digest of this file.
Return values
::getDigestSync()
Get the SHA-1 digest of this file.
Return values
-
Returns a String.
::setEncoding()
Sets the file's character set encoding name.
Supports utf8 natively and whichever other encodings are supported by
the iconv-lite package.
::getEncoding()
Return values
-
Returns the String encoding name for this file; default is
utf8.
Managing Paths
::getPath()
Return values
-
Returns the String path for this file.
::setPath(path)
Sets the path for the file.
This should not normally need to be called; use it only when you know a file’s path has changed and you don’t want to rely on the internal renaming detection.
| Argument | Description |
|---|---|
path
|
String The new path to set; should be absolute. |
::getRealPath()
Return values
::getRealPathSync()
Return values
-
Returns this file’s completely resolved String path, following symlinks if necessary.
::getBaseName()
Return values
-
Returns the String filename of this file without its directory context.
Traversing
::getParent()
Return values
-
Returns the Directory that contains this file.
Reading and Writing
::read(flushCache)
Reads the contents of the file.
| Argument | Description |
|---|---|
flushCache
|
A Boolean indicating whether to require a direct read or if a cached copy is acceptable. |
Return values
::readSync(flushCache)
Reads the contents of the file synchronously.
| Argument | Description |
|---|---|
flushCache
|
A Boolean indicating whether to require a direct read or if a cached copy is acceptable. |
Return values
-
Returns a String (if the file exists) or
null(if it does not).
::createReadStream()
Return values
-
Returns a stream to read the content of the file.
-
Returns a ReadStream object.
::write(text)
Overwrites the file with the given text.
| Argument | Description |
|---|---|
text
|
The String text to write to the underlying file. |
Return values
-
Returns a Promise that resolves when the file has been written.
::writeSync(text)
Overwrites the file with the given text.
| Argument | Description |
|---|---|
text
|
The String text to write to the underlying file. |
::createWriteStream()
Return values
-
Returns a stream to write content to the file.
-
Returns a WriteStream object.