当前位置 : 主页 > 网页制作 > xml >

使用冒号在powershell中搜索XML

来源:互联网 收集:自由互联 发布时间:2021-06-13
我有一个格式的 XML: val:root bla value1234/value/val:root 我可以将文件的内容添加到$xml变量中,但是我遇到了“val:root”的问题. 谢谢你的帮助! 编辑: 我尝试了$xml.“val:root”,$xml.val,$xm
我有一个格式的 XML:

<val:root>
   <bla>
     <value>1234</value>
</val:root>

我可以将文件的内容添加到$xml变量中,但是我遇到了“val:root”的问题.

谢谢你的帮助!

编辑:

我尝试了$xml.“val:root”,$xml.val,$xml.’val:root’和$xml.{val:root}.在Mizo的回答中找到了解决方案:

$xml.root.value

您的XML文件缺少val命名空间的声明.此外,< bla>元素未终止.

>在< root>中放置名称空间声明元件:

<val:root xmlns:val="urn:dummy">

那你可以做

PS C:\> $xml = [xml] (get-content test.xml)
 PS C:\Users\mizo\test> $xml.root.value
 1234

>如果您无法控制XML数据,则可以在伪根中声明val命名空间作为解决方法:

$xml = [xml] ("<dummyroot xmlns:val='urn:dummy'>" +
              (get-content test.xml) +
              "</dummyroot>")

然后你可以访问元素:

PS C:\> $xml.dummyroot.root.value
1234

如果您愿意,将urn:dummy替换为相关标识符.

网友评论