Powershell 调用WebRequest和希伯来文字符

Powershell 调用WebRequest和希伯来文字符,powershell,hebrew,Powershell,Hebrew,我已经尝试了reghack for PS来支持希伯来文字符。我可以输入希伯莱文,没有问题,但由于某些原因,从Invoke WebRequest返回的包含希伯莱文的字符是乱七八糟的(请参见下面的屏幕截图) 以下是我试图查询的网站URL: 更新: 返回的内容类型似乎始终是字符集Windows-1255,这可能就是问题所在。这似乎不仅是必须指定编码的问题,而且shell无法正确显示编码。如果您指定了文件的编码,并使用合适的文本编辑器(不是记事本,而是记事本++)对其进行编辑,那么您将看到它正确地解

我已经尝试了reghack for PS来支持希伯来文字符。我可以输入希伯莱文,没有问题,但由于某些原因,从Invoke WebRequest返回的包含希伯莱文的字符是乱七八糟的(请参见下面的屏幕截图)

以下是我试图查询的网站URL:

更新:
返回的内容类型似乎始终是字符集Windows-1255,这可能就是问题所在。

这似乎不仅是必须指定编码的问题,而且shell无法正确显示编码。如果您指定了文件的编码,并使用合适的文本编辑器(不是记事本,而是记事本++)对其进行编辑,那么您将看到它正确地解析了该文件

Invoke-WebRequest -Uri "https://www.hometheater.co.il/vt278553.html" -ContentType "text/plain; charset=Windows-1255" -OutFile content.txt
我们还可以通过读取内存中的演示文稿并将其写入另一个文件来测试它是否正确:

Get-Content .\content.txt | Set-Content test.txt

这可能只是一个可视化问题。您是否尝试过将内容写入文件?您可以这样做,例如调用WebRequest$muUrl | Set Content output.txt刚刚尝试过。同样的事情-胡言乱语。你证实了吗?即使通过Notepad++,我也得到了完全相同的东西。事实上,第一行很好。你所做的重新编码把一切都搞砸了。嗨,我做了一个小的修正,这样第二行现在也可以工作了(因为我的环境,它以前只能工作)。第二行的目的是证明PowerShell对象本身也正常。