2
我正在调用Web服务来检索XML数据。我保存对xml变量的响应:powershell xml变量编码
$Response = Invoke-WebRequest $newURL -Method Post -Headers @{SOAPAction=$newURL} -ContentType "text/xml" -Body $queryBody
Web服务的结果是在标题部分中使用UTF-8编码的xml。
然而,当我访问了一些元素即是这样的:“?”
$response.Envelope.Body.describeSObjectResponse.result.fields[4].picklistValues
我可以看到一些值转换为ASCII,因为一些国家的字符与字符替代。
请问如何以UTF-8编码读取这些元素?
编辑2014年3月1日:
好像问题出在调用-的WebRequest。如果我使用-outfile切换到文件重定向输出,则文件中的编码是正确的。如果我然后将xml文件的内容加载到xml变量编码中仍然是正确的。
任何想法,我怎么能实现相同的,但没有重定向输出到文件;即直接在PowerShell逻辑内部工作?
您在PowerShell主机中使用什么字体?常规控制台主机(同一个命令提示符使用),[终端](http://en.wikipedia.org/wiki/Terminal_(字体))中的默认字体不支持UTF-8。 – Nacimota
我在Windows PowerShell ISE中执行脚本,字体为:Lucida Console 9pt – user2761761