微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用冒号在powershell中搜索XML

我有一个格式的 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替换为相关标识符.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。