在PowerShell中将XML内容转换为字符串或html格式

时间:2015-02-20 07:32:26

标签: html xml powershell

我正在寻找一种方法来获取字符串或html中的xml内容:

我有一个xml,如:

<xml>
  <Students>
    <Name>Karan</Name>
    <Name>Rohan</Name>
    <Name>Jack</Name>
    <Name>Roy</Name>
  </Students>
</xml>

我写了以下代码:

[xml]$Xml = Get-Content (student.xml)
$str = ConvertTo-Xml -InputObject $Xml.InnerXml -As Stream

但是,它为$ str提供了以下字符串,并且在一行中也是如此:

<?xml version="1.0"?> <Objects> <Object Type="System.String">&lt;Class&gt;&lt;Students&gt;&lt;Name&gt;Karan&lt;/Name&gt;&lt;Name&gt;Rohan&lt;/Name&gt;&lt;Name&gt;Jack&lt;/Name&gt;&lt;Name&gt;Roy&lt;/Name&gt;&lt;/Students&g
t;&lt;/Class&gt;</Object> </Objects>

但是我想要以下格式的字符串,包括空格:

'<xml>
  <Students>
    <Name>Karan</Name>
    <Name>Rohan</Name>
    <Name>Jack</Name>
    <Name>Roy</Name>
  </Students>
</xml>'

2 个答案:

答案 0 :(得分:0)

也许

$str=gc C:\temp\test.xml |Out-String 

答案 1 :(得分:0)

这应该为您保留字符串中的XML数据。

[String]$str = Get-Content -Path "student.xml" -Raw