powershell - 从字符串而不是文件创建模板

powershell - create template from string instead of file

我有以下 powershell 代码。它基本上创建了一个模板,然后我用它来填充 XML 数据。

$template = @'
<?xml version="1.0" encoding="UTF-8"?>
<list>
    <details>
        <cj></cj>
        <jn></jn>
        <en></en>
        <st></st>
        <et></et>
    </details>
</list>
'@

$template | Out-File template.xml -encoding UTF8

$xml = New-Object xml
$xml.Load("template.xml")

它工作正常,但我想知道是否有更简洁的方法来执行此操作,不涉及将其导出到文件然后再加载该文件。

例如有没有办法将 $template 直接传递给 $xml (类似于 $xml.Load($template) - 这不起作用)

我浏览了整个网络,但找不到任何帮助 - 我是不是找错地方了?还是不能做?

(编辑:糟糕...我使用的是 powershell 3.0 版!不能说这是否适用于 2.0 版,但应该可以!)

我认为这种方式可行:

$template = @'
<?xml version="1.0" encoding="UTF-8"?>
<list>
    <details>
        <cj></cj>
        <jn></jn>
        <en></en>
        <st></st>
        <et></et>
    </details>
</list>
'@

$xml = New-Object xml
$xml.LoadXml( $template )