Socket
Socket
Sign inDemoInstall

jsonfile

Package Overview
Dependencies
0
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    jsonfile

Easily read/write JSON files.


Version published
Weekly downloads
55M
decreased by-0.79%
Maintainers
1
Install size
7.08 kB
Created
Weekly downloads
 

Package description

What is jsonfile?

The jsonfile npm package is a simple JSON file reading and writing library for Node.js. It provides utility functions to read and write JSON files with ease, handling the asynchronous file system operations and JSON parsing/stringifying under the hood.

What are jsonfile's main functionalities?

Reading JSON files

This feature allows you to read JSON files asynchronously. The readFile function takes a file path and a callback function that receives an error or the parsed JSON object.

const jsonfile = require('jsonfile');

jsonfile.readFile('/path/to/file.json', (err, obj) => {
  if (err) console.error(err);
  console.log(obj);
});

Writing JSON files

This feature allows you to write JSON objects to files asynchronously. The writeFile function takes a file path, the object to be written, and a callback function that is called upon completion or error.

const jsonfile = require('jsonfile');

const obj = {name: 'John', age: 30};
jsonfile.writeFile('/path/to/file.json', obj, (err) => {
  if (err) console.error(err);
});

Reading JSON files synchronously

This feature allows you to read JSON files synchronously, blocking the event loop until the file is read. The readFileSync function takes a file path and returns the parsed JSON object or throws an error.

const jsonfile = require('jsonfile');

try {
  const obj = jsonfile.readFileSync('/path/to/file.json');
  console.log(obj);
} catch (err) {
  console.error(err);
}

Writing JSON files synchronously

This feature allows you to write JSON objects to files synchronously, blocking the event loop until the file is written. The writeFileSync function takes a file path and the object to be written, and it will throw an error if the operation fails.

const jsonfile = require('jsonfile');

const obj = {name: 'Jane', age: 25};
try {
  jsonfile.writeFileSync('/path/to/file.json', obj);
} catch (err) {
  console.error(err);
}

Customizing JSON spacing

This feature allows you to customize the indentation of the JSON output. The writeFile and writeFileSync functions accept an options object where you can specify the number of spaces to use for indentation.

const jsonfile = require('jsonfile');

const obj = {name: 'Alice', age: 28};
jsonfile.writeFile('/path/to/file.json', obj, {spaces: 2}, (err) => {
  if (err) console.error(err);
});

Other packages similar to jsonfile

Readme

Source

build status

Node.js - jsonfile

Easily read/write JSON files.

Why?

Writing JSON.stringify() and then fs.writeFile() and JSON.parse() with fs.readFile() enclosed in try/catch blocks became annoying.

Installation

npm install jsonfile

API

readFile()

var jf = require('jsonfile')
  , util = require('util');

var file = '/tmp/data.json';
js.readFile(file, function(err, obj) {
   console.log(util.inspect(obj)); 
});

readFileSync()

var jf = require('jsonfile')
  , util = require('util');

var file = '/tmp/data.json';

console.log(util.inspect(jf.readFileSync(file)));

writeFile()

var jf = require('jsonfile')

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

jf.writeFile(file, obj, function(err) {
    console.log(err);
})

writeFileSync()

var jf = require('jsonfile')

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

jf.writeFileSync(file, obj);

spaces

Number of spaces to indent JSON files.

default: 4

var jf = require('jsonfile');

jf.spaces = 2;

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

jf.writeFile(file, obj, function(err) { //json file has two space indenting now
    console.log(err);
});

Author

node-jsonfile was written by JP Richardson. You should follow him on Twitter @jprichardson. Also read his coding blog Procbits. If you write software with others, you should checkout Gitpilot to make collaboration with Git simple.

License

(MIT License)

Copyright 2012, JP Richardson jprichardson@gmail.com

FAQs

Last updated on 10 Sep 2012

Did you know?

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc