[英]Wrong diacritic letters in Integrated Terminal of Visual Studio Code with PowerShell between Run and Run Selection
最可能的解釋:
您正在運行Windows PowerShell ,它根據系統的活動 ANSI 代碼頁(在您的示例中為1250
)讀取其源代碼。
相比之下,Visual Studio Code 默認創建無 BOM 的 UTF-8編碼文件。
如果源代碼文件(或 Windows PowerShell 讀取的任何文本文件,例如使用Get-Content
)中沒有 BOM,則假定為ANSI編碼,因此 UTF-8 文件被誤解。
具體來說,任何非 ASCII 字符的每個單獨字節——在 UTF-8 中總是被編碼為多字節序列——然后被解釋為 ANSI 字符。
注意:這在 PowerShell (Core) 7+ 中不再是問題,它始終默認為 UTF-8,無論是在讀取 BOM-less 文件時還是在寫入文件時(BOM-less UTF-8)。
因此,解決方案是保存您的源代碼- 或您希望 Windows PowerShell 正確讀取的任何 UTF-8 文件 -作為ZAE3B3ZDF9970B5BC956727正確讀取。
您還需要為希望在 PowerShell 的兩個版本中正常運行的源代碼執行此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.