簡體   English   中英

node.js無法從mongoexport讀取json

[英]node.js cannot read json from mongoexport

我已經使用以下命令從mongo中導出了一個集合:

mongoexport -d <database-name> -c <collection-name> -o foo.json

導出工作正常,並生成了foo.json

{
  "_id" : { "$oid" : "76safuysadf76tsaydgf" },
  "name" : "John",
  "number" : 3
}
{
  "_id" : { "$oid" : "dfsafuysaasdf7tsayd6" },
  "name" : "Fred",
  "number" : 4
}
{
  "_id" : { "$oid" : "876sfuyg7rfasff4ffff" },
  "name" : "Paul",
  "number" : 1
}

現在,我想使用node.js讀取此json文件,編輯數據並保存回該文件(或新文件)。 例如,我想從每個用戶中刪除number字段。

我在使用node讀取文件時遇到問題。 我嘗試了這個:

var fs = require("fs");
var obj = JSON.parse(fs.readFileSync("./foo.json"));
console.log(obj);

但是我收到以下錯誤:

uncaughtException: Unexpected token {
SyntaxError: Unexpected token {

編輯:mongoexport文檔: http : //docs.mongodb.org/manual/reference/program/mongoexport/

如我在原始答案中所述,使用--jsonArray選項可獲取JSON數組中的輸出。

原始答案

似乎您正在嘗試解析JSON數組,而不是一個對象。 嘗試將[]和逗號添加到mongoexport的輸出中,如下所示:

[{
   "_id" : { "$oid" : "76safuysadf76tsaydgf" },
   "name" : "John",
   "number" : 3
},
{
   "_id" : { "$oid" : "dfsafuysaasdf7tsayd6" },
   "name" : "Fred",
   "number" : 4
},
{
   "_id" : { "$oid" : "876sfuyg7rfasff4ffff" },
   "name" : "Paul",
   "number" : 1
}]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM