write

Write data to a file, replacing the file if it already exists and creating any intermediate directories if they don't already exist. Thin wrapper around node's native fs methods.

Install

Install with npm:

$ npm install --save write

Usage

var writeFile = require('write');

API

Asynchronously writes data to a file, replacing the file if it already exists and creating any intermediate directories if they don't already exist. Data can be a string or a buffer. Returns a promise if a callback function is not passed.

Params

  • filepath {string|Buffer|integer}: filepath or file descriptor.

  • data {string|Buffer|Uint8Array}: String to write to disk.

  • options {object}: Options to pass to fs.writeFile and/or mkdirp

  • callback {Function}: (optional) If no callback is provided, a promise is returned.

Example

var writeFile = require('write');
writeFile('foo.txt', 'This is content...', function(err) {
  if (err) console.log(err);
});

// promise
writeFile('foo.txt', 'This is content...')
  .then(function() {
    // do stuff
  });

The promise version of writeFile. Returns a promise.

Params

  • filepath {string|Buffer|integer}: filepath or file descriptor.

  • val {string|Buffer|Uint8Array}: String or buffer to write to disk.

  • options {object}: Options to pass to fs.writeFile and/or mkdirp

  • returns {Promise}

Example

var writeFile = require('write');
writeFile.promise('foo.txt', 'This is content...')
  .then(function() {
    // do stuff
  });

The synchronous version of writeFile. Returns undefined.

Params

  • filepath {string|Buffer|integer}: filepath or file descriptor.

  • data {string|Buffer|Uint8Array}: String or buffer to write to disk.

  • options {object}: Options to pass to fs.writeFileSync and/or mkdirp

  • returns {undefined}

Example

var writeFile = require('write');
writeFile.sync('foo.txt', 'This is content...');

Uses fs.createWriteStream to write data to a file, replacing the file if it already exists and creating any intermediate directories if they don't already exist. Data can be a string or a buffer. Returns a new WriteStream object.

Params

Example

var fs = require('fs');
var writeFile = require('write');
fs.createReadStream('README.md')
  .pipe(writeFile.stream('a/b/c/other-file.md'))
  .on('close', function() {
    // do stuff
  });

Release history

v1.0.2 - 2017-07-11

  • improved documentation

v1.0.0 - 2017-07-09

Added

Changed

  • The main export will now return a promise if no callback is passed

About

  • delete: Delete files and folders and any intermediate directories if they exist (sync and async). | homepage

  • read-data: Read JSON or YAML files. | homepage

  • read-yaml: Very thin wrapper around js-yaml for directly reading in YAML files. | homepage

  • write-data: Write a YAML or JSON file to disk. Automatically detects the format to write based… more | homepage

  • write-json: Write a JSON file to disk, also creates intermediate directories in the destination path if… more | homepage

  • write-yaml: Write YAML. Converts JSON to YAML writes it to the specified file. | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Contributors

Commits

Contributor

Building docs

(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)

To generate the readme, run the following command:

$ npm install -g verbose/verb#dev verb-generate-readme && verb

Running tests

Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:

$ npm install && npm test

Author

Jon Schlinkert

License

Copyright © 2017, Jon Schlinkert. Released under the MIT License.


This file was generated by verb-generate-readme, v0.6.0, on July 11, 2017.

Last updated