如何使用Node.js读取JSON文件

如何使用Node.js读取JSON文件本教程将帮助您使用带有readFile和readFileSync函数的node.js脚本读取JSON文件内容。

介绍

本教程将帮助您使用Node.js阅读JSON文件内容。本教程使用jsonfile模块的readFile和readFileSync函数。

要求

第一个要求是在系统上安装node.js和npm。如果没有安装使用下面的链接。 在本教程中,我们使用的是jsonfile NPM模块。 所以,首先你需要在系统上安装jsonfile模块
$ npm install jsonfile --save
现在,我创建一个dummy json文件employee.json。你可以使用自己的json文件。 文件名:employee.json
[
  {
    "emp_id" : "101",
    "emp_name" : "Mike",
    "emp_addr" : "123 California, USA",
    "designation" : "Editor"
  },
  {
    "emp_id" : "102",
    "emp_name" : "Jacob",
    "emp_addr" : "456 Log Angelis, USA",
    "designation" : "Chief Editor"
  }
]

使用Nodejs读取JSON文件 - 选项#1

在上面的步骤中,我创建了一个示例JSON文件。现在创建ReadJsonFile.js并添加以下内容。您需要使用JSON文件名更改employee.json。 文件名:ReadJsonFile.js
var jsonFile = require('jsonfile')
var fileName = 'employee.json'

jsonFile.readFile(fileName, function(err, jsonData) {
  if (err) throw err;
  for (var i = 0; i
Now run the nodejs script using following command.  
$ node ReadJsonFile.js 

Emp ID: 101
Emp Name: Mike
Emp Address: 123 California, USA
Designation: Editor
----------------------------------
Emp ID: 102
Emp Name: Jacob
Emp Address: 456 Log Angelis, USA
Designation: Chief Editor
----------------------------------

Read JSON File with Nodejs - Option #2

Alternatively, you can use readFileSync function to read json file content. Create a ReadJsonFileSync.js file with following content. You can read here about the differences of readFile and readFileSync function in Jode.js. Filename: ReadJsonFileSync.js
var jsonFile = require('jsonfile')
var fileName = 'employee.json'

var jsonData = jsonFile.readFileSync(fileName);

for (var i = 0; i
Now run the nodejs script using following command.  
$ node ReadJsonFileSync.js 

Emp ID: 101
Emp Name: Mike
Emp Address: 123 California, USA
Designation: Editor
----------------------------------
Emp ID: 102
Emp Name: Jacob
Emp Address: 456 Log Angelis, USA
Designation: Chief Editor
----------------------------------
现在使用以下命令运行nodejs脚本。
$ node ReadJsonFile.js 

Emp ID: 101
Emp Name: Mike
Emp Address: 123 California, USA
Designation: Editor
----------------------------------
Emp ID: 102
Emp Name: Jacob
Emp Address: 456 Log Angelis, USA
Designation: Chief Editor
----------------------------------

使用Nodejs读取JSON文件 - 选项#2

另外,您也可以使用readFileSync函数读取JSON文件的内容。 创建具有以下内容的ReadJsonFileSync.js文件。 你可以在这里阅读有关ReadFile和readFileSync功能的Jode.js.的差异 文件名:ReadJsonFileSync.js
var jsonFile = require('jsonfile')
var fileName = 'employee.json'

var jsonData = jsonFile.readFileSync(fileName);

for (var i = 0; i
Now run the nodejs script using following command.  
$ node ReadJsonFileSync.js 

Emp ID: 101
Emp Name: Mike
Emp Address: 123 California, USA
Designation: Editor
----------------------------------
Emp ID: 102
Emp Name: Jacob
Emp Address: 456 Log Angelis, USA
Designation: Chief Editor
----------------------------------
现在使用以下命令运行nodejs脚本。
$ node ReadJsonFileSync.js 

Emp ID: 101
Emp Name: Mike
Emp Address: 123 California, USA
Designation: Editor
----------------------------------
Emp ID: 102
Emp Name: Jacob
Emp Address: 456 Log Angelis, USA
Designation: Chief Editor
----------------------------------