如何让PowerShell显示中文不乱码

故障描述:

这两天有个部门做了个Survey用来调查一些信息,由于对最后的结果报表有些特殊要求,不得不决定弃用SharePoint Survey自带的Export to spreadsheet功能,改用PowerShell导出结果。

过程中碰到个小麻烦,就是Survey结果中的中文字符不能正常显示,打印出来的都是问号。。

如何让PowerShell显示中文不乱码

解决方法:

其实嘛一看就知道是encoding的问题,英语为默认语言的环境里,PowerShell默认的Encoding是AscII

最简单的方法就是改用PowerShell ISE,它可以显示非英语字符。在操作SharePoint数据的时候只要在启动ISE的时候运行一下下面的语句就可以,相比于Management Console方便很多。

Add-PSSnapin Microsoft.SharePoint.PowerShell

如何让PowerShell显示中文不乱码

另外一个解决方法是把Encoding改为UTF8,运行下面的语句就可以了。

$OutputEncoding = New-Object -typename System.Text.UTF8Encoding

如何让PowerShell显示中文不乱码

上一篇:django搭建web (三) admin.py -- 待续


下一篇:sql 生成开始日期到结束日期与开始日期的相差天数