【发布时间】:2011-04-25 12:35:22
【问题描述】:
我已经使用
定义了一个 XML 字符串$str = "<a><b></b></a>"
现在我想将它加载到一个 [xml] 变量中,以便能够操纵它的节点等。 下面的行导致错误...
$str = [xml]"<a><b></b></a>"
我该怎么做?
【问题讨论】:
-
这里也一样。正如您在上面输入的那样,它对我有用。
标签: xml powershell
我已经使用
定义了一个 XML 字符串$str = "<a><b></b></a>"
现在我想将它加载到一个 [xml] 变量中,以便能够操纵它的节点等。 下面的行导致错误...
$str = [xml]"<a><b></b></a>"
我该怎么做?
【问题讨论】:
标签: xml powershell
您问题中的代码似乎对我有用。我刚刚在我的字符串中添加了test 以显示我可以访问该值,但它也应该在没有它的情况下工作。
转换字符串也对我有用:
...我用你的字符串运行它并且效果很好... Full Image
【讨论】:
试试这个
$xmlcontent = variable which holds xml data in string
$xml = New-Object -TypeName System.Xml.XmlDocument
$xml.LoadXml($xmlcontent)
【讨论】:
为了搜索者的利益,如果您有一个包含格式(而不是直接在根节点处)信息的 xml 顶行,您需要在转换之前删除顶行
例如
<?xml version="1.0" encoding="utf-8"?>
<Courses>
<CourseEntry Type="Mandatory" Name="Math"/>
<CourseEntry Type="Mandatory" Name="Coding" />
<CourseEntry Type="Optional" Name="Economics" />
<CourseEntry Type="Optional" Name="History" />
</Courses>
要求:
$xmlFile = Get-Content "*.xml"
$xmlFileMinusFormatData = $xmlFile[1..($xmlFile.Length - 1)] #we need to remove the first line
$usableXml = [xml]$xmlFileMinusFormatData # Convert to xml for easy handling
$usableXml.Courses.CourseEntry.Count # just a count of rows
【讨论】: