在Node.js中保存XML文件
问题描述:
我刚刚开始探索Node.js,因为我打算很快使用Node.js处理项目。我更喜欢将我的项目数据保存在XML文件中,因为我们正在寻找Node.js的模块或库,以方便保存,编辑,检索和转换XML数据。在对此进行研究时,我遇到了像Node.js的xml2js,xmlbuilder,sax,node-xml和data2XML等模块,但它们都不允许将修改的XML存储回XML文件。在Node.js中保存XML文件
我们使用$xml->asXML("file.xml")
在PHP中保存XML文件,我正在寻找Node.js中的替代方案。
答
像XMLDOM这样的DOM实现有一个XMLSerializer类(大多数浏览器也有)。这是DOM API标准的一部分。
它允许将DOM文档/节点序列化为字符串。您可以使用fs
模块将字符串保存在文件中。
var fs = require('fs');
var serializer = new (require('xmldom')).XMLSerializer;
var implementation = new (require('xmldom')).DOMImplementation;
var document = implementation.createDocument('', '', null);
document.appendChild(document.createElement('foo'));
fs.writeFile(
"/tmp/test.xml",
serializer.serializeToString(document),
function(error) {
if (error) {
console.log(error);
} else {
console.log("The file was saved!");
}
}
);