我有一个Powershell脚本,其中正在执行以下操作:
$FilePath = "Somepath"
#XPath = "Some Xpath"
$Attribute = "Delimiter"
$Value="	"
$xml=new-object -TypeName System.Xml.XmlDocument
$xml.Load($FilePath)
$a=$xml.selectSinglenode($XPath)
if ($a -eq $null)
{
throw "Cannot Load XPATH: $XPath from $FilePath"
}
if([system.string]::isnullorwhitespace($Attribute))
{
if (!($a.InnerXml -eq $Value))
{
$a.InnerXml = $Value
}
}
else
{
if (!($a.($Attribute) -eq $Value))
{
$a.($Attribute)= $Value
}
}
$xml.Save($FilePath)
正在保存的文件具有该属性值的保存情况如下
<Element Delimiter="&#x9;">
我希望它在哪里
<Element Delimiter="	">
我该如何实现?
答案 0 :(得分:0)
您正在将$ Value设置为字符串“&”号,井号,小写字母x,数字9。因此,XML会按要求对它进行编码。
相反,
$Value=[char]0x0009
这是Unicode代码点U + 0009的单个UTF-16代码单元。