【发布时间】:2014-09-12 18:50:23
【问题描述】:
我有一个 XML 文件
<main>
<iframe>
<name>1234</name>
<url1>123</url1>
<url2>345</url2>
</iframe>
<iframe>
<name>563466</name>
<url1>345435</url1>
<url2>3453</url2>
</iframe>
</main>
我需要使用 nodejs 在上述 xml 文件的 main 中插入以下元素
<iframe>
<name>563466</name>
<url1>345435</url1>
<url2>3453</url2>
</iframe>
我使用elementtree 模块来创建如下的xml文件
var et = require('elementtree');
var XML = et.XML;
var ElementTree = et.ElementTree;
var element = et.Element;
var subElement = et.SubElement;
root = element('main');
root.set('xmlns', 'http://www.w3.org/2005/Atom');
iframeTag = subElement(root, 'iframe');
iframeTitle = subElement(iframeTag, 'title');
iframeTitle.text = title;
iframeUrl1 = subElement(iframeTag, 'url1');
iframeUrl1.text = url1;
iframeUrl2 = subElement(iframeTag, 'url2');
iframeUrl2.text = url2;
etree = new ElementTree(root);
xml = etree.write({'xml_declaration': false});
我可以使用elementtree 模块添加元素。但是如果我重新启动服务器,root 将是未定义的。所以我不能以上述方式更新元素。谁能帮我解决?
【问题讨论】:
标签: javascript xml node.js xml-parsing elementtree