繁体   English   中英

Powershell-如何停止文件中的XML自动更正html?

[英]Powershell - how to stop XML auto-correcting html in a file?

有什么办法可以阻止Powershell转换/读取文件中的html字符?

如果我只是打开然后保存一个xml文件:

[xml]$xml = get-content "c:\file.xml"
$xml.save("c:\file.xml") 

以下密钥已更改

从:

<add key="TimeFormat" value="h:mm&#160;tt"/>

至:

<add key="TimeFormat" value="h:mm tt" />

关键是,我不希望它更改任何文本,我希望HTML实体保持原始状态。

谢谢

&#160; 0xA0 )是ISO-8859-1中的不间断空格,但在UTF-8中不是有效字符。 可能发生两件事之一:

  1. Powershell期望(或您的XML文件声称是)UTF-8,而Powershell则用空格静默替换无效字符。 如果是这种情况,它实际上应该在抱怨并显示一条错误消息。
  2. (更有可能)XML文件具有指定ISO-8859-1的正确头,并且Powershell用实际的“ 0xA0”字节替换了该实体。 就XML标准而言,这是一件完全正确的事情,您必须查看Powershell的XML文档,看看是否可以为XML序列化器提供选项以防止这种转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM