故障描述:
這兩天有個部門做了個Survey用來調查一些信息,由於對最后的結果報表有些特殊要求,不得不決定棄用SharePoint Survey自帶的Export to spreadsheet功能,改用PowerShell導出結果。
過程中碰到個小麻煩,就是Survey結果中的中文字符不能正常顯示,打印出來的都是問號。。
解決方法:
其實嘛一看就知道是encoding的問題,英語為默認語言的環境里,PowerShell默認的Encoding是AscII
最簡單的方法就是改用PowerShell ISE,它可以顯示非英語字符。在操作SharePoint數據的時候只要在啟動ISE的時候運行一下下面的語句就可以,相比於Management Console方便很多。
Add-PSSnapin Microsoft.SharePoint.PowerShell |
另外一個解決方法是把Encoding改為UTF8,運行下面的語句就可以了。
$OutputEncoding = New-Object -typename System.Text.UTF8Encoding |