nodejs elementtree npm etree.write() 漂亮的打印

赫曼特·亚达夫

我在将 etree npm 用于 nodejs 时遇到了问题。我在我的应用程序中广泛使用 elementtree npm,所以我无法更改 npm。我正在使用以下代码编写 XML。

var et = require('elementtree');
tailorData = fs.readFileSync(XML_FILE).toString();
etree = et.parse(tailorData);
// Do some changes in xml
var resultXml = etree.write(); // DOES NOT DO PRETTY PRINTING
fs.writeFileSync(tailoredXML, resultXml);

etree.write() 弄乱了整个 XML,我后来的处理停止了。它不会在标签后放置结束线。这就是 XML 现在的样子。

<?xml version='1.0' encoding='utf-8'?><Tailoring id="1234"><status>incomplete</status><Profile id="CIS_LEVEL_1"><title>CIS_LEVEL_1 Security Profile</title><select idref="file_group_owner_grub2_cfg" selected="true" /><select idref="file_user_owner_grub2_cfg" selected="true" /><select idref="file_permissions_grub2_cfg" selected="true" /></Profile></Tailoring>

以下是我的期望:

<?xml version='1.0' encoding='utf-8'?>
<Tailoring id="1234">
<status>incomplete</status>
<Profile id="CIS_LEVEL_1">
<title>CIS_LEVEL_1 Security Profile</title>
<select idref="file_group_owner_grub2_cfg" selected="true" />
<select idref="file_user_owner_grub2_cfg" selected="true" />
<select idref="file_permissions_grub2_cfg" selected="true" />
</Profile>
</Tailoring>

他们有什么办法可以在nodejs中实现上述结果吗?

赫曼特·亚达夫

想出了办法。使用非常轻量级的 npm "pretty-data" 来实现这一点。

var pd = require('pretty-data').pd;

var et = require('elementtree');
tailorData = fs.readFileSync(XML_FILE).toString();
etree = et.parse(tailorData);
// Do some changes in xml
var resultXml = etree.write();
resultXml = pd.xml(resultXml); // THIS WILL DO THE PRETTY PRINTING.
fs.writeFileSync(tailoredXML, resultXml);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有漂亮打印的 XML ElementTree

来自分类Dev

给定元素的xml.etree.ElementTree.write()整数值可以吗?

来自分类Dev

xml.etree.ElementTree getElementByID()?

来自分类Dev

xml.etree.ElementTree findall

来自分类Dev

xml.etree.ElementTree findall

来自分类Dev

将xml打印到控制台(xml.etree.ElementTree)

来自分类Dev

xml.etree.ElementTree-麻烦设置xmlns ='...'

来自分类Dev

Python xml.etree.ElementTree 问题

来自分类Dev

xml.etree.ElementTree iterparse()仍在使用大量内存?

来自分类Dev

python xml.etree.ElementTree追加到子元素

来自分类Dev

使用html5lib和xml.etree.ElementTree

来自分类Dev

'lxml.etree._ElementTree'对象没有属性'cssselect'

来自分类Dev

如何使用xml.etree.ElementTree访问标签之间的文本

来自分类Dev

IronPython和xml.etree.ElementTree非法字符错误

来自分类Dev

可以继承或模拟python etree.ElementTree.Element吗?

来自分类Dev

使用xml.etree.ElementTree XML解析子元素

来自分类Dev

python(xml.etree.ElementTree)中的XML解析

来自分类Dev

无法使用xml.etree.ElementTree解析html

来自分类Dev

如何使用xml.etree.ElementTree访问标签之间的文本

来自分类Dev

使用xml.etree.ElementTree搜索XML元素树的属性

来自分类Dev

继承或模拟python etree.ElementTree.Element可能吗?

来自分类Dev

将xpath与lxml.etree._ElementTree一起使用

来自分类Dev

使用 Python xml.etree.ElementTree 遍历 XML 树的问题

来自分类Dev

将lxml.etree._ElementTree对象存储在数据帧中:TypeError:无法腌制lxml.etree._ElementTree对象

来自分类Dev

检索包时阻止NodeJS npm打印详细信息

来自分类Dev

使用xml.etree.ElementTree获取子节点的所有实例

来自分类Dev

使用xml.etree.ElementTree解析XML时获取空列表作为属性

来自分类Dev

使用find方法(xml.etree.ElementTree)后获取父元素

来自分类Dev

如何在python xml.etree.ElementTree中的迭代器中删除节点

Related 相关文章

  1. 1

    带有漂亮打印的 XML ElementTree

  2. 2

    给定元素的xml.etree.ElementTree.write()整数值可以吗?

  3. 3

    xml.etree.ElementTree getElementByID()?

  4. 4

    xml.etree.ElementTree findall

  5. 5

    xml.etree.ElementTree findall

  6. 6

    将xml打印到控制台(xml.etree.ElementTree)

  7. 7

    xml.etree.ElementTree-麻烦设置xmlns ='...'

  8. 8

    Python xml.etree.ElementTree 问题

  9. 9

    xml.etree.ElementTree iterparse()仍在使用大量内存?

  10. 10

    python xml.etree.ElementTree追加到子元素

  11. 11

    使用html5lib和xml.etree.ElementTree

  12. 12

    'lxml.etree._ElementTree'对象没有属性'cssselect'

  13. 13

    如何使用xml.etree.ElementTree访问标签之间的文本

  14. 14

    IronPython和xml.etree.ElementTree非法字符错误

  15. 15

    可以继承或模拟python etree.ElementTree.Element吗?

  16. 16

    使用xml.etree.ElementTree XML解析子元素

  17. 17

    python(xml.etree.ElementTree)中的XML解析

  18. 18

    无法使用xml.etree.ElementTree解析html

  19. 19

    如何使用xml.etree.ElementTree访问标签之间的文本

  20. 20

    使用xml.etree.ElementTree搜索XML元素树的属性

  21. 21

    继承或模拟python etree.ElementTree.Element可能吗?

  22. 22

    将xpath与lxml.etree._ElementTree一起使用

  23. 23

    使用 Python xml.etree.ElementTree 遍历 XML 树的问题

  24. 24

    将lxml.etree._ElementTree对象存储在数据帧中:TypeError:无法腌制lxml.etree._ElementTree对象

  25. 25

    检索包时阻止NodeJS npm打印详细信息

  26. 26

    使用xml.etree.ElementTree获取子节点的所有实例

  27. 27

    使用xml.etree.ElementTree解析XML时获取空列表作为属性

  28. 28

    使用find方法(xml.etree.ElementTree)后获取父元素

  29. 29

    如何在python xml.etree.ElementTree中的迭代器中删除节点

热门标签

归档