2013-08-29 63 views
5

例如,我有一個名爲people.json的文件。其內容是:如何編寫腳本來編輯JSON文件?

[ 
    {"name": "Paul", 
    "age": 29, 
}, 
    {"name": "Kathy", 
    "age": 101, 
}, 
    {"name": "Paula", 
    "age": 12, 
}, 
    {"name": "Bruce", 
    "age": 56, 
} 
] 

所以在這裏我想添加的圖片鏈接,每個人例如

[{"name":"Paul", 
"age" : 29, 
"pic" : "paul.png" 
}, 
    {"name": "Kathy", 
    "age": 101, 
"pic" : "kathy.png" 
}, 
    {"name": "Paula", 
    "age": 12, 
"pic" : "paula.png" 
}, 
    {"name": "Bruce", 
    "age": 56, 
"pic" : "bruce.png" 
} 
] 

我該如何去寫一個腳本來添加一個pic鍵到每個人,並添加以person.name.lowercase +「.png」作爲值?

在過程結束時,people.json將被編輯並保存到硬件中而不是內存中。

非常感謝。

+5

在任何這些語言中,這是幾行代碼。選擇一個你喜歡的。 –

+1

對於正確的JSON,您錯過了一些逗號。 –

+0

我對此很新。你可以給我一些提示嗎? – dazer

回答

8

這裏有一個完整的程序,在JavaScript(使用Node.js的),做你想要什麼:

fs = require('fs'); 
var m = JSON.parse(fs.readFileSync('people.json').toString()); 
m.forEach(function(p){ 
    p.pic = p.name.toLowerCase()+".png"; 
}); 
fs.writeFile('people.json', JSON.stringify(m)); 

作爲獎勵(包括與其他語言的其他應答者),這裏有一個固定的輸入JSON:

[ 
    {"name":"Paul","age":29}, 
    {"name":"Kathy","age":101}, 
    {"name":"Paula","age":12}, 
    {"name":"Bruce","age":56} 
]