Node.js:如何创建XML文件

Node.js: How to create XML files

本文关键字:创建 XML 文件 js 何创建 Node      更新时间:2023-09-26

是否有创建XML文件的好方法?例如,像Builder For Rails(或任何其他方式(?

感谢

看起来xmlbuilder-js库可以为您做到这一点。如果你安装了npm,你可以npm install xmlbuilder

它会让你这样做(取自他们的例子(:

var builder = require('xmlbuilder');
var doc = builder.create('root');
doc.ele('xmlbuilder')
    .att('for', 'node-js')
    .ele('repo')
      .att('type', 'git')
      .txt('git://github.com/oozcitak/xmlbuilder-js.git') 
    .up()
  .up()
  .ele('test')
    .txt('complete');
console.log(doc.toString({ pretty: true }));

这将导致:

<root>
  <xmlbuilder for="node-js">
    <repo type="git">git://github.com/oozcitak/xmlbuilder-js.git</repo>
  </xmlbuilder>
  <test>complete</test>
</root>

xmlbuilder最近的更改要求将根元素名称传递给create()

参见的工作示例

var builder = require('xmlbuilder');
var doc = builder.create('root')
  .ele('xmlbuilder')
    .att('for', 'node-js')
    .ele('repo')
      .att('type', 'git')
      .txt('git://github.com/oozcitak/xmlbuilder-js.git') 
      .up()
    .up()
  .ele('test')
  .txt('complete')
.end({ pretty: true });
console.log(doc.toString());

xmlbuilder已停产,取而代之的是xmlbuilder2,它经过从头开始的重新设计,完全符合现代DOM规范。

使用npm:安装xmlbuilder2

npm install xmlbuilder2

例如,在他们的主页上,用它创建一个新的XML文件:

const { create } = require('xmlbuilder2');
const root = create({ version: '1.0' })
  .ele('root', { att: 'val' })
    .ele('foo')
      .ele('bar').txt('foobar').up()
    .up()
    .ele('baz').up()
  .up();
// convert the XML tree to string
const xml = root.end({ prettyPrint: true });
console.log(xml);

将导致:

<?xml version="1.0"?>
<root att="val">
  <foo>
    <bar>foobar</bar>
  </foo>
  <baz/>
</root>