【问题标题】:How to open, edit and push back an xml stream with perl?如何使用 perl 打开、编辑和推回 xml 流?
【发布时间】:2011-09-25 22:05:59
【问题描述】:

我想知道是否可以使用 perl 打开、修改 DOM 并保存一个只有一个流的 XML 文件。我正在尝试使用 XML::LibXML 来实现这一点,但直到现在都没有成功。

我想通过 XPath 获取一个元素,然后修改一些属性或文本值。 我想将 child 附加到使用 XPath 表达式等获取的元素中……但如果可能的话,只使用一个流。

一旦所有内容修改后,将其推回原始文件。

任何模块可以做到这一点?

【问题讨论】:

  • 我发现了这个网站wellho.co.uk/resources/ex.php4?item=p668/goblin.pl,它向我展示了如何用 XML::LibXML 替换我的 XML 流
  • 我不确定“流”是最好的描述。流式 XML 通常涉及到远程系统的连接,而 XML::Stream 很好地支持了这一点。可以更清楚地了解“只有一个流”是什么意思吗?
  • 我所说的流是指文件的内容,但我的英文翻译是错误的。对不起。

标签: xml perl dom xml-parsing libxml2


【解决方案1】:

据我所知,XML::LibXML 根本不支持任何流式传输,它总是首先读取和解析整个文档。

通常建议使用XML::Twig,但我不知道它是否符合您的要求。

【讨论】:

    【解决方案2】:

    使用 XPath 类的 XML::Twig 看起来很方便。但这听起来有点像 XSLT 样式表的工作。我想这取决于您正在处理的 xml 文件...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-21
      • 2011-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-13
      相关资源
      最近更新 更多