詳解Ruby語(yǔ)言中的注釋用法與中文編碼問(wèn)題
Ruby 注釋
注釋會(huì)對(duì) Ruby 解釋器隱藏一行,或者一行的一部分,或者若干行。您可以在行首使用字符( # ):
# 我是注釋,請(qǐng)忽略我。
或者,注釋可以跟著語(yǔ)句或表達(dá)式的同一行的后面:
name = "Madisetti" # 這也是注釋
您可以注釋多行,如下所示:
# 這是注釋。 # 這也是注釋。 # 這也是注釋。 # 這還是注釋。
下面是另一種形式。這種塊注釋會(huì)對(duì)解釋器隱藏 =begin/=end 之間的行:
=begin 這是注釋。 這也是注釋。 這也是注釋。 這還是注釋。 =end
Ruby 中文編碼
用 Ruby 輸出 "Hello, World!",英文沒(méi)有問(wèn)題,但是如果你輸出中文字符"你好,世界"就有可能會(huì)碰到中文編碼問(wèn)題。
Python 文件中如果未指定編碼,在執(zhí)行過(guò)程會(huì)出現(xiàn)報(bào)錯(cuò):
#!/usr/bin/ruby -w puts "你好,世界!";
以上程序執(zhí)行輸出結(jié)果為:
invalid multibyte char (US-ASCII)
以上出錯(cuò)信息顯示了 Ruby 使用用 ASCII 編碼來(lái)讀源碼,中文會(huì)出現(xiàn)亂碼,解決方法為只要在文件開(kāi)頭加入 # -*- coding: UTF-8 -*-(EMAC寫(xiě)法) 或者 #coding=utf-8 就行了。
實(shí)例
#!/usr/bin/ruby -w # -*- coding: UTF-8 -*- puts "你好,世界!";
輸出結(jié)果為:
你好,世界!
所以如果大家再學(xué)習(xí)過(guò)程中,源代碼文件中,若包含中文編碼,則需要注意兩點(diǎn):
1. 必須在首行添加 # -*- coding: UTF-8 -*-,告訴解釋器使用utf-8來(lái)解析源碼。
2. 必須設(shè)置編輯器保存文件的編碼為utf-8。
相關(guān)文章
使用Ruby程序?qū)崿F(xiàn)web信息抓取的教程
這篇文章主要介紹了使用Ruby程序?qū)崿F(xiàn)web信息抓取的教程,本文來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下2015-04-04Ruby實(shí)現(xiàn)郵件主動(dòng)推送觸發(fā)程序
這篇文章主要介紹了Ruby實(shí)現(xiàn)郵件主動(dòng)推送觸發(fā)程序,本文給出了客戶端輪詢和服務(wù)器主動(dòng)推送的代碼實(shí)例,需要的朋友可以參考下2015-01-01詳解Ruby中正則表達(dá)式對(duì)字符串的匹配和替換操作
這篇文章主要介紹了Ruby中正則表達(dá)式對(duì)字符串的匹配和替換操作,包括對(duì)結(jié)果分組和一些特殊全局變量的介紹,需要的朋友可以參考下2016-04-04在Ruby中處理XML和XSLT以及XPath的簡(jiǎn)單教程
這篇文章主要介紹了在Ruby中處理XML和XSLT以及XPath的簡(jiǎn)單教程,對(duì)Ruby on Rails的學(xué)習(xí)上手有一定的幫助,需要的朋友可以參考下2015-04-04Linux系統(tǒng)上配置Nginx+Ruby on Rails+MySQL超攻略
這篇文章主要介紹了Linux系統(tǒng)上配置Nginx+Ruby on Rails+MySQL超攻略,用到了RVM,此種服務(wù)器搭建配置極力推薦!需要的朋友可以參考下2015-08-08