Ruby輸出中文報錯問題解決

最近學習Ruby,遇到第一個問題就是輸出中文的時候控制檯報錯.

name = ["曉林","大戶","小虎"]
p name[0]
p name[1]
p name[2]


以上代碼運行之後報錯:

flymouse@flymouse-pc:~/rubys$ ruby arrays.rb 
arrays.rb:1: invalid multibyte char (US-ASCII)
arrays.rb:1: invalid multibyte char (US-ASCII)


解決方法目前我知道的有兩種:

方法一:

執行ruby程序時加上-Ks、-Ke、-Ku(大寫字母K)之類的環境參數,這些參數用來指定文字編碼。針對中文字符串,可以指定-Ku參數(UTF-8)來取得正常的顯示效果。

flymouse@flymouse-pc:~/rubys$ ruby -Ku arrays.rb 
"曉林"
"大戶"
"小虎"


方法二:

可以在ruby文件最頂部添加指定編碼格式的代碼:

#encoding:utf-8 或 #encoding:gbk

#encoding:utf-8
name = ["曉林","大戶","小虎"]
p name[0]
p name[1]
p name[2]


然後再運行,效果如下:

flymouse@flymouse-pc:~/rubys$ ruby arrays.rb 
"曉林"
"大戶"
"小虎"







發佈了34 篇原創文章 · 獲贊 9 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章