ffos-fs
v0.0.7
Published
fs module for the Firefox OS
Downloads
15
Readme
ffos-fs
File System (fs) module for the Firefox OS
Provides file system functions for the Firefox OS and devices supporting device storage.
It tries to mimic node's fs module where possible.
By the very nature of the device storage it only implements a subset of node's fs module.
Usage
Higher level functions
var fs = require('ffos-fs');
Get files within a directory. Returned files are of type File.
fs.readdir(path, callback(error, files) { ... });
Read contents of a file.
options
- format
String | Null
default = 'text', can be 'text', 'binary', 'dataURL', 'buffer' - encoding
String | Null
default = null, text encoding if format is 'text' - flag
String
default = 'r', can be 'r' or 'w'
fs.readFile(path, [options], callback(error, data) { ... });
Write contents to a file.
Will create the file if it does not exist and overwrite an existing file.
options
- encoding
String | Null
default = 'utf8' - mimetype
String | Null
default = 'text/plain' - flag
String
default = 'w'
fs.writeFile(path, data, [options], callback(error) { ... });
Check if a file exists.
You cannot check for the existance of a directory on Firefox OS.
fs.exists(path, callback(error, exists) { ... });
Remove a file or directory.
fs.unlink(path, callback(error) { ... });
Lower level functions
Open a File handle.
flag
can be one of 'r' or 'w'.
fd
is either of type File (read)
or of type FileHandle (write).
fs.open(path, flag, callback(error, fd) { ... });
Read from a file to a Blob.
fd
must be of type FileHandle or File or LockedFile.
blob
is the blog that the data will be written to.
offset
is the offset in the blob to start writing at.
length
is an integer specifying the number of bytes to read.
position
is an integer specifying where to begin reading from in the file.
If position
is null
, data will be read from the start.
fs.read(fd, blob, offset, length, position, callback(error, bytesRead, blob) { ... });
Write from a blob to a file Blob.
fd
must be of type FileHandle or File or LockedFile.
blob
is the blog that the data will be written to.
offset
is the offset in the blob to start writing at.
length
is an integer specifying the number of bytes to read.
position
is an integer specifying where to begin reading from in the file.
If position
is null
, data will be read from the start.
fs.read(fd, blob, offset, length, position, callback(error, bytesRead, blob) { ... });
Mocking the filesystem
It's possible to mock the filesystem to an in-memory filesystem.
fs.mock();
Currently there is no support for the Lower level functions in mock mode.
You can however use:
- fs.writeFile
- fs.exists
- fs.readFile
- fs.readdir
- fs.unlink
If you need to prepopulate your mocked filesystem with files just use fs.writeFile
to create some files.