Socket
Book a DemoInstallSign in
Socket

jsonfile-commentless

Package Overview
Dependencies
Maintainers
3
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

jsonfile-commentless

Easily read/write JSON files. Also strips comments.

latest
Source
npmnpm
Version
1.0.5
Version published
Maintainers
3
Created
Source

Node.js - jsonfile-commentless

Easily read/write JSON files.

npm Package

Standard JavaScript

Why?

Writing JSON.stringify() and then fs.writeFile() and JSON.parse() with fs.readFile() enclosed in try/catch blocks became annoying. Then not being able to strip comments with the standard jsonfile package also became annoying.

Installation

npm install --save jsonfile-commentless

API

readFile(filename, [options], callback)

options (object, default undefined): Pass in any fs.readFile options or set reviver for a JSON reviver.

  • throws (boolean, default: true). If JSON.parse throws an error, pass this error to the callback. If false, returns null for the object.
var jsonfile = require('jsonfile-commentless')
var file = '/tmp/data.json'
jsonfile.readFile(file, function(err, obj) {
  console.dir(obj)
})

readFileSync(filename, [options])

options (object, default undefined): Pass in any fs.readFileSync options or set reviver for a JSON reviver.

  • throws (boolean, default: true). If an error is encountered reading or parsing the file, throw the error. If false, returns null for the object.
var jsonfile = require('jsonfile-commentless')
var file = '/tmp/data.json'

console.dir(jsonfile.readFileSync(file))

writeFile(filename, obj, [options], callback)

options: Pass in any fs.writeFile options or set replacer for a JSON replacer. Can also pass in spaces and override EOL string.

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFile(file, obj, function (err) {
  console.error(err)
})

formatting with spaces:

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFile(file, obj, {spaces: 2}, function(err) {
  console.error(err)
})

overriding EOL:

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFile(file, obj, {spaces: 2, EOL: '\r\n'}, function(err) {
  console.error(err)
})

appending to an existing JSON file:

You can use fs.writeFile option {flag: 'a'} to achieve this.

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/mayAlreadyExistedData.json'
var obj = {name: 'JP'}

jsonfile.writeFile(file, obj, {flag: 'a'}, function (err) {
  console.error(err)
})

writeFileSync(filename, obj, [options])

options: Pass in any fs.writeFileSync options or set replacer for a JSON replacer. Can also pass in spaces and override EOL string.

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFileSync(file, obj)

formatting with spaces:

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFileSync(file, obj, {spaces: 2})

overriding EOL:

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/data.json'
var obj = {name: 'JP'}

jsonfile.writeFileSync(file, obj, {spaces: 2, EOL: '\r\n'})

appending to an existing JSON file:

You can use fs.writeFileSync option {flag: 'a'} to achieve this.

var jsonfile = require('jsonfile-commentless')

var file = '/tmp/mayAlreadyExistedData.json'
var obj = {name: 'JP'}

jsonfile.writeFileSync(file, obj, {flag: 'a'})

License

(MIT License)

Original Work : https://github.com/jprichardson/node-jsonfile

Copyright 2012-2016, JP Richardson jprichardson@gmail.com

Modified Work : https://github.com/z3dtech/node-jsonfile

Copyright 2017, z3dtech z@z3d.tech

Keywords

read

FAQs

Package last updated on 15 Nov 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