[英]Convert string which is read from a file to json object in nodejs
我正在從文件中讀取字符串並希望將其轉換為json
對象文件內容: {name:"sda"}
代碼:
var fs=require('fs');
var dir='./folder/';
fs.readdir(dir,function(err,files){
if (err) throw err;
files.forEach(function(file){
fs.readFile(dir+file,'utf-8',function(err,jsonData){
if (err) throw err;
var content=jsonData;
var data=JSON.stringify(content);
console.log(data);
});
});
但我得到這個輸出: {name:\\"sda\\"}
除了將 JavaScript 值轉換為 JSON 字符串的JSON.stringify()
方法之外,您還可以使用JSON.parse()
方法將字符串解析為 JSON:
fs.readFile(dir+file,'utf-8',function(err, jsonData){
if (err) throw err;
var content = JSON.stringify(jsonData);
console.log(content);
var data = JSON.parse(content);
console.log(data);
});
檢查下面的演示。
var jsonData = '{name:"sda"}', content = JSON.stringify(jsonData), data = JSON.parse(content); pre.innerHTML = JSON.stringify(data, null, 4);
<pre id="pre"></pre>
由於您的文件不是有效的 JSON,您可以使用eval
(這是一個骯臟的黑客,但它有效),例如:
data = '{name:"sda"}'; eval('foo = ' + data); console.log(foo);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.