文件"/>
用 node.js 附加本地 XML 文件
我有一个需要附加的本地 xml 文件。我正在使用 node.js 将 xml 转换为 json,然后使用“xml2js”将其转换回 xml。
文件布局是这样的
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<events>
<event name="SomeEventName">
<nominal>1</nominal>
<min>1</min>
<max>1</max>
<lifetime>1800</lifetime>
<restock>0</restock>
<saferadius>0</saferadius>
<distanceradius>0</distanceradius>
<cleanupradius>0</cleanupradius>
<flags deletable="1" init_random="0" remove_damaged="1"/>
<position>fixed</position>
<limit>child</limit>
<active>1</active>
<children>
<child lootmax="0" lootmin="0" max="0" min="0" type="SomeData"/>
</children>
</event>
</events>
我需要一次添加整个事件,如上图所示。
这是我正在使用的代码。
var fs = require("fs"),
parseString = require("xml2js").parseString,
xml2js = require("xml2js");
fs.readFile(var1, function(err, data) {
if (err) console.log(err);
//console.log(data);
parseString(data, function(err, result) {
if (err) console.log(err);
//console.log(result);
var json = result;
var content = `
<events>
<event name="SomeEvent">
<nominal>5</nominal>
<min>5</min>
<max>0</max>
<lifetime>1800</lifetime>
<restock>0</restock>
<saferadius>1000</saferadius>
<distanceradius>1000</distanceradius>
<cleanupradius>1000</cleanupradius>
<secondary>InfectedArmy</secondary>
<flags deletable="1" init_random="0" remove_damaged="0"/>
<position>fixed</position>
<limit>child</limit>
<active>1</active>
<children/>
</event>
</events>`
json + content
//json.push(content) <<errors out
var builder = new xml2js.Builder();
var xml = builder.buildObject(json);
fs.writeFile(var1, xml, function(err, data) {
if (err) console.log(err);
预期的结果应该是在本地xml文件中添加了另一个从“event”到“/event”的匹配项。稍后我会调整代码以添加自定义条目。
我找不到任何接近我所追求的东西。我确定我不是在寻找合适的词。我是新手,请耐心等待
回答如下:更多推荐
用 node.js 附加本地 XML 文件
发布评论