Graceful filesystem streams.
Provides both readable and writable filesystem streams that open files on first read or write.
Because stream producers are not always stream consumers, it can be useful to create a stream without worrying if data
has ever been read or written.
gfs
lazy opens or creates files. So it ensures a loose coupling between stream creation and file opening or creation.
This can be useful in various use cases where you want to create streams without accessing the file system yet.
npm install graceful-fs-stream --production
var fs = require('graceful-fs-stream');
/** read stream */
var readable = fs.createReadStream(file);
// file is no yet open
readable.once('data', function() {
// file was just open
});
/** write stream */
var writable = fs.createWriteStream(path);
// file is not yet open
writable.write('hey');
// file was just open
Note that if you try to close a stream directly, it won't crash badly.
Nicolas Gryman |