亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Windows 上的 Go (golang) 中打印 UTF-8(或 unicode)字符

如何在 Windows 上的 Go (golang) 中打印 UTF-8(或 unicode)字符

Go
翻閱古今 2023-04-24 17:03:40
讓我們來看看這個:? Hello, 世界如您所見,有一個 unicode 復選標記和中文/日文字符。在 go 中,如果我使用 MSYS 或 linux 環境,我可以輕松打印這些字符。即使在窗戶上。但是,我無法在CMD或 中看到它們Powershell。我懂了:電源外殼這是我非?;镜拇a:package mainimport (    "fmt")func main() {    fmt.Println("? Hello, 世界")    // OR    fmt.Println("\u2713 Hello, 世界")}此外,我有許多控制臺應用程序,它們能夠使用 cmd 或 powershell 在我的窗口上顯示此類字符。為什么去不了?
查看完整描述

3 回答

?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

Windows cmd 和 PowerShell 控制臺的問題是 Consolas 和 Lucida Console 等字體中缺少 CJK 字符。在 Windows 10 上,將控制臺字體更改為支持 CJK 字符的字體,例如 NSimSun 或 SimSun-ExtB。


例如,


font.go:


package main


import (

    "fmt"

)


func main() {

    fmt.Println("? Hello, 世界")

    // OR

    fmt.Println("\u2713 Hello, 世界")

}

輸出(NSimSun):


Microsoft Windows [Version 10.0.17134.345]

>go version

go version devel +47cc59f31f Tue Oct 23 00:29:57 2018 +0000 windows/amd64

>go run font.go

? Hello, 世界

? Hello, 世界

>


查看完整回答
反對 回復 2023-04-24
?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

嘗試在Windows PowerShell ISE中運行。

它對顯示 Unicode 有很好的支持。

CMD 和 PowerShell 不能很好地支持命令行 shell中的 Unicode 字體,因為它們并不是真正使用“字體”來顯示文本,而是使用轉換為字符的 ANSI/VT 代碼頁。因此,盡管 PowerShell 能夠在內部支持 Unicode,并且您可以在對象和函數之間傳遞它們,但命令行 shell根本無法顯示它們,因為代碼頁和顯示之間的轉換不存在。

Windows PowerShell ISE 不同于從命令行shell運行 PowerShell ,因為 ISE 顯示輸出并且不必使用 ANSI/VT 序列在 shell 和 PowerShell 控制臺主機之間傳遞命令。而且它沒有任何遺留腳本需要處理。


查看完整回答
反對 回復 2023-04-24
?
MM們

TA貢獻1886條經驗 獲得超2個贊

使用Windows 終端。您可以在 Microsoft Store 上獲得它。



查看完整回答
反對 回復 2023-04-24
  • 3 回答
  • 0 關注
  • 333 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號