我目前正在使用TFS PowerTools在PowerShell中运行查询并将结果导出为XML文件。然后,我想将该XML文件导入Alteryx进行进一步处理。当TFS PT导出XML文件时,它将以下标题放在顶部:
<?xml version="1.0" encoding="utf-8"?>
然而,Alteryx不喜欢这样,并且除非取消编码信息,否则拒绝阅读文档。有没有办法可以使用PowerShell删除编码信息,因此它只显示:
提前感谢您的帮助。
答案 0 :(得分:0)
是的,你可以:
$doc = New-Object xml
$doc.Load((Resolve-Path ".\path\to\doc.xml").ProviderPath)
if($doc.FirstChild.NodeType -eq 'XmlDeclaration')
{
$doc.FirstChild.Encoding = $null
}
$doc.Save((Resolve-Path ".\path\to\doc.xml").ProviderPath)
答案 1 :(得分:0)
这将起作用,但xml文件不再有效。
$xml = get-content $xmlfile | Out-String
$xml = $xml.replace('<?xml version="1.0" encoding="utf-8"?>',"") #removes text
$xml | out-file $xmlfile #outputs text in file