5
私は、JSONに変換してファイルに書きたい、大きなjavascriptオブジェクトを持っています。JSONにストリームを使用してNode.jsの大きなネストされたオブジェクトをストリング化する方法は?
stream.js:94
throw er; // Unhandled stream error in pipe.
^
TypeError: Invalid non-string/buffer chunk
at validChunk (_stream_writable.js:153:14)
at WriteStream.Writable.write (_stream_writable.js:182:12)
だから、どうやら私はちょうどこのstringifyObject
にオブジェクトを書き込むカント:私はそう
var fs = require('fs');
var JSONStream = require('JSONStream');
var st = JSONStream.stringifyObject()
.pipe(fs.createWriteStream('./output_file.js'))
st.write(large_object);
私はこれをしようとすると、私はエラーを取得するように、この使用してストリームを行うことができると思いました。私は次のステップが何であるか分かりません。オブジェクトをバッファに変換する必要がありますか?いくつかの変換ストリームを介してオブジェクトを実行し、それをパイプに接続しますstrinigfyObject
を:JSの割り当てに失敗しました - プロセスをmemory' – kevzettler
のうち、私はちょうど秒1を変更largeが配列でない限り、あなたの状況の正確なコードになります。それを試してください。 –
私は2番目のバージョンを試しましたが、大きな割り当てられたオブジェクトを 'obj [key]'値の1つとして持っていて、メモリ割り当てエラーを投げています。私は子供オブジェクトの再帰的な何かsimilliarが必要でしょう – kevzettler