翔如菲菲

其实天很蓝,阴云总会散;其实海不宽,此岸连彼岸.

导航

Ruby编程语言学习笔记2

对应Ruby编程语言第二章 

#coding:utf-8

#Ruby1.9以上版本,如果一行代码的第一个非空白的字符是一个"句点",那么这一行将被作为上一行的延续
animals=Array.new
.push("dog")
.push("cow")
.sort
puts animals

#File Structure(文件结构)
#
如果Ruby程序包含"shebang"注释,则该注释必须是程序的第一行,这行注释是为了指示Unix/Linux操作系统如何执行该文件的
#
如果Ruby程序包含"coding"注释,那么如果没有"shebang"注释,则该注释必须是程序的第一行;否则,该注释必须是程序的第二行
#
!/usr/bin/ruby -w
#
-*- coding : utf-8 -*-

#Program Encoding(程序编码)
#
默认情况下,Ruby解释器假定程序的编码是ASCII,我们可以在Ruby源文件中指定编码方式,也可以在调用Ruby解释器的时候指定编码方式
#
Ruby1.8中可以使用-K命令选项来指定不同编码:-ku调用解释器采用UTF-8,-ke调用解释器采用EUC-JP(一种日文编码)编码
#
Ruby1.9也支持-k命令选项,但是建议User优先使用在程序中指定编码

#文本编辑器使用下面的编码注释:
#
coding:utf-8 

#Emacs用户可以使用下面编码注释
#
-*- coding : utf-8 -*-

#vi用户可以用下面编码注释:
#
vi:set fileencoding=utf-8:

#以上3种都是声明程序使用UTF-8编码

#关键字__ENCODING__(开始和结尾都还有2个下划线)含有当前程序的编码方式
print __ENCODING__ #由于当前程序第一行编码注释:#coding:utf-8 ,故输出:UTF-8
puts"\n"

#关键字__ENCODING__(开始和结尾都还有2个下划线)含有当前程序的编码方式
print __ENCODING__ ,"\n"#由于当前程序第一行编码注释:#coding:utf-8 ,故输出:UTF-8

#Source Encoding and Default External Encoding(源编码和默认外部编码)
=begin 上边我们讲的就是源编码,是源编码可以指定单个源文件的编码方式,
  通常一个Ruby程序是由多个文件组成的,不同文件有可能编码是不同的
 默认外部编码是Ruby从文件或者流中读取内容时采用的编码,是全局的,不会随着文件编码的改变而改变
Ruby1.9中我们可以使用-E或者-encoding 选项来指定默认外部编码的编码方式:ruby -E utf-8或者ruby -encoding utf-8 
=end
print Encoding.default_external,"\n" #查询默认外部编码

posted on 2012-06-06 16:20  翔如飞飞  阅读(370)  评论(0编辑  收藏  举报