Windows控制台上的UTF-8支援

來源:互聯網
上載者:User
出處:http://blog.csdn.net/zhubc/article/details/7293376最近在學習Go語言,發現調用一些庫函數失敗後的返回字串,都是一些亂碼,覺得奇怪。所以寫了一個最簡單的程式來複現這個問題:

func main(){ 
        _, err := os.Open("none-exist-file") 
        if err != nil{ 
                fmt.Println(err) 
        } 

 

}  編譯運行一切都正常,但是輸出是亂碼:open none-exist-file: 緋葷粺鎵句笉鍒版寚瀹氱殑鏂囦歡銆?  原因就是Go語言以UTF-8編碼進行輸出,而Windows控制台預設不支援UTF-8。解決方案就是更改code page,使用命令 chcp,不加任何參數便顯示當前的code page。把code page改為65001即可。另外還要把字型改為Lucia Console。 這樣的更改會導致其它一些不使用utf-8編碼的程式出現亂碼。  一些相關的link:https://groups.google.com/forum/#!topic/golang-nuts/WhpWNhBRMFM/discussion

https://groups.google.com/group/golang-nuts/browse_thread/thread/cf9727737e5b4a00/d0e9d4dc975e875b?lnk=gst&q=messy+code#d0e9d4dc975e875bhttp://hi.baidu.com/edeed/blog/item/2e99a14440bd8884b2b7dcb1.htmlhttp://blog.codingnow.com/2008/12/utf-8_replacement.html

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.