🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

objects-to-file

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

objects-to-file

Create a delimited value, output file from an array of objects

latest
Source
npmnpm
Version
1.0.3
Version published
Maintainers
1
Created
Source

objects-to-file Travis XO code style

Create a delimited value, output file from an array of objects

objectsToFile([{}, {}, {}]) => :page_facing_up:

Install

$ npm install --save objects-to-file OR $ yarn add objects-to-file

Usage

Basic

const fs = require('fs');
const objectsToFile = require('objects-to-file');

const cats = [
    { name: 'Bubbles', breed: 'Persian', age: '24', color: 'honey-brown' },
    { name: 'Garfield', breed: 'Tabby', age: '33', color: 'orange with stripes' }
];
objectsToFile(cats, './cat_data.txt', { header: true })
    .then(file => console.log(`data: ${file}`)
    .catch(console.log);

// ./cat_data.txt:
// name,breed,age,color
// Bubbles,Persian,24,honey-brown
// Garfield,Tabby,33,orange with stripes

Advance

const fs = require('fs');
const objectsToFile = require('objects-to-file');

const dogData = [
    './data/dogs/german_sheperd',
    './data/dogs/pug',
    './data/dogs/beagle'
];

let dogOutput = dogsPaths
                    .map((filePath) => require(dogPaths))
                    .map((dog, index) => objectsToFile(dog, `./output/DATA_${index}.csv`);

Promise
    .all(dogOutput)
    .then((files) => {
        const paths = files.toString().replace(/,/g, ', ');
        console.log(`Files stored at: ${paths}`);
        // Files stored at: ./output/DATA_0.csv,  ./output/DATA_1.csv, ./output/DATA_2.csv
     })
     .catch(console.log);

API

objectsToFile(data, outputPath[, options])

Creates a file based on an array of objects. Unless specified, it will use the first object as a mapping for subsequent objects.

Returns a {Promise}, when resolved returns the file location path

data | <array>

The input array of objects.

outputPath | <string>

The output file location

options | <object>

options.keys | <array>[<string> | <int>]

A list of keys to map and dictate the order of the value output. Any non-existent fields will be omitted.

options.header | <bool>

Set true to print the key on the first chunk of the file. Note: this will not work with options.raw = true

options.count | <int>

Number of desired objects to be written.

options.bar | <object>

Assign a progress bar instance to be bar.tick() per each chunk written.

options.delimiter | <string>

The delimiter to be used to seperate values. Default: ","

options.EOL | <string>

The End of Line character to be used. Default: "\n"

options.encoding | <string>

The encoding to be used for the output file. Default: "utf8"

options.raw | <bool>

Set true to print all the values within the objects, ignoring keys or first object key mapping.

options.encoding | <string>

The encoding to be used for the output file. Default: "utf8"

:repeat: file-line-parse - Parse a file, line by line, to an array of objects.

License

MIT

Keywords

io

FAQs

Package last updated on 25 Jan 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts