我想要实现的是:
- 解析一大块 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"));
我确实认为更新一些内容(见上面的评论)足以将更新的流写入一个新文件。
这段代码有什么问题?
谢谢你的帮助,
罗兰