【问题标题】:How to extract a node of XML and create a new XML document如何提取 XML 的节点并创建新的 XML 文档
【发布时间】:2015-07-05 13:35:02
【问题描述】:

我需要使用 Powershell 从较大的 XML 文档中提取节点(和子节点)并创建一个新的独立 XML 文档,其中仅包含提取的 XML 节点(和子节点);然后我需要将这个新提取的 XML 保存在一个文件中。被提取的顶级 XML 节点具有属性。看来我必须设置新 XML 对象的 XMLDocument 值才能执行此操作,但 XMLDocument 是只读属性。有人可以帮忙吗?

【问题讨论】:

    标签: xml powershell xmldocument


    【解决方案1】:

    关键是使用XmlDocument.ImportNode()方法例如:

    $xml1 = [xml](Get-Content foo.xml)
    # find the node you want to extract
    $node = $xml1.Foo.Bar
    
    $xml2 = New-Object System.Xml.XmlDocument
    $newNode = $xml2.ImportNode($node, $true)
    $xml2.AppendChild($newNode)
    $xml2.Save("bar.xml")
    

    【讨论】:

    • 谢谢。我在其他任何地方都找不到如此简洁的正确答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 2015-08-28
    • 2010-09-24
    • 2019-06-17
    • 1970-01-01
    相关资源
    最近更新 更多