にJSON文字列を変更するには: "127,30" }はどのように私はこのようなJSONを持ってロング/ダブル/ナンバー
私はこのように、ダブル/ナンバーに "値" フィールドを変更したいと思います:
{ "id_document": "12345679"、 "名前": "John SMmith"、 "value":127.30 }
問題は、JSONデータがたくさんあることです。たとえば、70k行です。だから私はこれを自動化する方法が必要です。 誰かにイデアがありますか?
どの言語でも解決できます。私はNodeJSを試していました。
助けを借りてくれてありがとう。
EDIT:
{ "DESPESA":[{ "sgPartido": "DEM"、 "numMes":1、 "txtCNPJCPF":
私のJSONファイルのようなものである "03625917000170"、 "vlrGlosa": "0"、 "txNomeParlamentar": "ABEL MESQUITA JR"、 "sgUF": "RR"、 "nuCarteiraParlamentar":1、 "vlrDocumento": "4007,06"、 "nuDeputadoId":3074、 55、 "vlrRestituicao": "0"、 "numParcela":0、 "txtDescricao":null、 "datEmissao":null、 "datEmissao":null、 "codEngine":3、 "txtDescricaoEspecificacao" "txtNumero": "4339"、 "numEspecificacaoSubCota":1、 "txtFornecedor": "BB PETROLEO LTDA"、 "numLote":1354058、 "indTipoDocumento":0、 "idecadaストローク ":178957、" numAno ":2017、" txtTrecho ":null、" numRessarcimento ":5711、" vlrLiquido ":" 4007,06 "、" ideDocumento ":6196889、" nuLegislatura ":2015}、... 70kこれと終わりのようなオブジェクト}
EDITとライン:queのため
fs = require('fs');
var in_file = 'in.json';
var out_file = 'out.json'
fs.readFile(in_file, 'utf8', function(err, data) {
data = JSON.parse(data);
for(let i in data.DESPESA) {
let despesa = data.DESPESA[i];
let valor = despesa.vlrDocumento.replace(',', '.');
data.DESPESA[i].vlrDocumento = parseFloat(valor);
}
fs.writeFile(out_file, JSON.stringify(data), function(err) {
if (err) throw err;
console.log('The file has been saved!');
});
});
おかげヘルプは、答えが違いを作った:私は男をしたが、結果はということでした。
何か=は( 'fsの' 必要 FS)から来た;? するvarメートル= 'out.json'; fs.readFile(M 'UTF8'、関数(エラー、データ){ \t data = JSON.parse(data); \t Object.keys(データ).forEach(関数(vlrDocumento){ \t \t vlrDocumento.value = parseFloatは(vlrDocumento.replace( " ""。")) \t \t JSON.stringify(vlrDocumento.value) \t}) }); – Yago
ここにObject.keys()が何をしようとしているのか分かりません。その中に1つの巨大なJSONオブジェクトを持つ単一のファイルがあれば、その構造は何か不思議です。それがオブジェクトの配列であれば、object.keysではなく、forEachまたはmapを使用します。 – JoeTortuga
JSONの1つのオブジェクトで質問を編集しました。 "vlrDocumento": "4007,06"の項目を "vlrDocumento":4007.06に変更しようとしています。同じ "vlrDocumento"キーの値がそれぞれ異なるもの。 – Yago