配列から複数のJSONファイルを作成したいとします。配列からのJsonファイルの動的作成
アレイ:
[{
"Reference": "Registration",
"langkey": "REG_LBL",
"English": "Company Registration",
"Japanese": "会社登録"
}, {
"Reference": "Registration",
"langkey": "INFO_LBL",
"English": "Company Information",
"Japanese": "会社情報"
}]
私は2つのJSONファイルを作成する必要があるが、アレイ上から(それはダイナミックになります)、英語と日本語の名前を付けます。
所望の出力
English.json
{
'INFO_LBL' : 'Company Information',
'REG_LBL':'Company Registration'
}
Japanese.json
{
'INFO_LBL' : '会社情報',
'REG_LBL':'会社情報'
}
コード
for (var i = 0; i < data.length; i++) {
var obj = data[i];
for (var key in obj) {
if (key !=='Reference' && key !== 'langkey') {
//{'REG_LBL':'Company Registration'}
objects[obj['langkey']] = obj[key];
fs.writeFileSync('lang/' + langkey + '.json', JSON.stringify(objects, null, 2), { encoding: 'utf8' }, function (err) {
if (err)
{ throw err; }
console.log("completed")
});
}
}
}
私は2つのJSONファイルを作成することはできますが、コンテンツは別のファイルによって上書きされます。これを解決するにはどうすればよいですか?
2つのJSONファイルを作成できます。配列に言語ごとに複数のオブジェクトがある場合は、言語ごとにオブジェクトの配列を使用し、これをjsonファイルに書き込む必要があります。 – DomeTune
'langKey'はどこで定義されていますか? – DomeTune
jsonファイルの作成方法を含めることができます – Merigold