JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 78169
  • Score
    100M100P100Q163461F
  • License BSD

A CSV encoder stream that produces properly escaped CSVs

Package Exports

  • csv-write-stream

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (csv-write-stream) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

csv-write-stream

A CSV encoder stream that produces properly escaped CSVs.

NPM

browser support

A through stream. Write arrays of strings (or JS objects) and you will receive a properly escaped CSV stream out the other end.

usage

var writer = csvWriter([options])
var csvWriter = require('csv-write-stream')
var writer = csvWriter()

writer is a duplex stream -- you can pipe data to it and it will emit a string for each line of the CSV

default options

{
  separator: ',',
  newline: '\n',
  headers: undefined
}

headers can be an array of strings to use as the header row. if you don't specify a header row the keys of the first row written to the stream will be used as the header row IF the first row is an object (see the test suite for more details)

example of auto headers:

var writer = csv()
writer.pipe(fs.createWriteStream('out.csv'))
writer.write({hello: "world", foo: "bar", baz: "taco"})
writer.end()

// produces: hello,foo,baz\nworld,bar,taco\n

example of specifying headers:

var writer = csv({ headers: ["hello", "foo"]})
writer.pipe(fs.createWriteStream('out.csv'))
writer.write(['world', 'bar'])
writer.end()

// produces: hello,foo,baz\nworld,bar,taco\n

see the test suite for more examples

run the test suite

$ npm install
$ npm test