私が達成したいことは次のとおりです。
- XML のチャンクを解析する
- いくつかの値を編集する
- 最終結果を新しいxmlファイルに保存する
モジュールはsax-js です: https://github.com/isaacs/sax-js#readme
モジュールには、読み取り/書き込みを行うためのメカニズムが組み込まれています。
その仕事は簡単だと思いました。それどころか、私は一日中それに苦労しています。
これが私のコードです:
var fs = require('fs');
var saxStream = require("sax").createStream(true);
saxStream.on("text", function (node) {
if (node === 'foo') { //the content I want to update
node = 'blabla';
}
});
fs.createReadStream("mysongs.xml")
.pipe(saxStream)
.pipe(fs.createWriteStream("mysongs-copy.xml"));
更新されたストリームを新しいファイルに書き込むには、一部のコンテンツを更新するだけで十分だと思いました (上記のコメントを参照)。
このコードの何が問題になっていますか?
ご協力いただきありがとうございます、
ローランド