学习Ruby的过程中,对于于涉及中文的的代码的时候,需要添加如下代码在首行

# encoding: utf-8

或者EMAC写法

# -*- coding : utf-8 -*-

因为Ruby编译器会在注释行搜索coding字样,所以以上两种写法皆可。

样例代码1:

# encoding: utf-8

是=1
puts "我=#{是}"

但是保存运行,却发现如下的提示错误:

$ ruby encoding.rb
encoding.rb:4: invalid multibyte char (UTF-8)
encoding.rb:4: invalid multibyte char (UTF-8)

本人使用的是eclipse来开发,而eclipse默认使用的又是GBK编码。所以即使在首行添加了encoding还不够,需要修改eclipse的设置,让它保存文件的时候改为utf-8的格式来保存。

设置如下:

Window -> Preferences -> General -> Workspace : Text file encoding

这里选择UTF-8作为文件编码格式。

然后再次运行代码,则不会再提示编码错误。

$ ruby encoding.rb
我=1

总结:

源代码文件中,若包含中文编码,则需要注意两点:

1. 必须在首行添加 #encoding : utf-8,告诉解释器使用utf-8来解析源码

2. 必须设置编辑器保存文件的编码为utf-8.

ruby 中文支持设置的更多相关文章

  1. (转: daifubing的博客 )Delphi二维码中文支持、分组、批量打印经验小结

    一直也没接触到什么复杂的报表,都是一些简单的报表,在DelphI下使用QuickReport一般也就能满足需要了,由于公司现在需求的变化,对条码扫描提出了新的要求,主要是扫码要包含更多地内容,以前的一 ...

  2. linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)

     linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...

  3. 移动开发之浅析cocos2d-x的中文支持问题

    题记:这阵子一直在学习cocos2d-x,其跨平台的特性确实让人舒爽,引擎的框架概念也很成熟,虽然相应的第三方工具略显单薄,但也无愧是一件移动开发的利器啊,有兴趣的朋友有时间就多了解吧. 使用引擎的过 ...

  4. inux 安装中文支持包及中文字符集配置 +i18n

    由于某些原因系统安装时未安装中文支持,导致后续应用出现中文方块乱码现象, 解决方法很简单,当然不是重装,只需以下三步即可搞定. .安装中文包: yum -y groupinstall chinese- ...

  5. OpenReports中文支持方案

    此文章在<OpenReports中文支持完全解决方案.doc>的基础上做优化,并贴出代码.已测试通过. 一.主要解决的问题 1 页面显示支持中文 2 与服务器或数据库的交互支持中文 3 查 ...

  6. centos安装中文支持(转)

    安装中文支持包. yum install fonts-chineseyum install fonts-ISO8859-2 -------- 一.安装中文支持方法1.在安装光盘中找到一下包进行安装.r ...

  7. RedHat安装中文支持和字体

    操作系统: Red Hat Enterprise Linux 6.3 x86 安装中文语言支持: yum install "@chinese support" 安装完中文支持后,可 ...

  8. jupyter notebook 目录配置、导出 tex 和 pdf 及中文支持

    环境:macbook pro, mactex, jupyter notebook, brew 安装pandoc从而支持格式转换为tex: brew install pandoc 修改tex artic ...

  9. Centos6.5安装中文支持和中文输入法---VIM编辑器中文支持

    Centos6.5安装中文支持和中文输入法 第一步:中文支持:    在shell命令下输入: # vi  /etc/sysconfig/i18n 然后修改LANG="en_US.UTF-8 ...

随机推荐

  1. HAProxy 基本翻译

    REF:http://cbonte.github.io/haproxy-dconv/1.5/configuration.html Proxy configuration can be located ...

  2. java接口相关例题

    java接口相关习题 interface Graphics{  //接口里面只能用抽象方法  public abstract double area();    }//设置 平面类class Plan ...

  3. MVC Controller return 格式

    所看到的Action都是return View();我们可以看作这个返回值用于解析一个aspx文件.而它的返回类型是ActionResult如 public ActionResult Index()  ...

  4. [Javascript] delete keyword

    delete keyword doesn't actually delete the value but just the reference. var me = { name: { first: & ...

  5. flex利用webservice上传照片

    WebService端代码 /// <summary> /// 上传文件到远程server /// </summary> /// <param name="fi ...

  6. java笔试题13-11-21

    中xxx科技公司java笔试题 今天去参加一个公司的面试,去先做了一份笔试题,妈的,太他妈难了(对于我来说,最后做完一个员工说你是不是投错简历了,都是空白,我说我做的大部分都对了..最后面试都没有,就 ...

  7. centos 安装mysqldb 记录

    vim setup_pofix.py #修改mysql_config路径 <pre> ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /us ...

  8. linux下安装redis并自启动

    最近需要使用redis作为tomcat集群的session存储介质,因此记录redis的安装步骤.redis是一款高性能的nosql,支持异步将缓存写入到磁盘中,避免宕机的意外情况导致的缓存信息丢失. ...

  9. 数据库的CRUD操作

    一:数据库的CRUD操作,C是指create新增,R是指retrieve检索,U是指update更改,D是指delete删除 SQL语句分为3类: 1.DDL指数据定义语言如:create,drop, ...

  10. JavaScript入门(2)

    一.JS输出内容--(document.write) document.write()可用于直接向HTML输出流写内容,即直接在网页中输出内容. 第一种:输出内容用" "括起来,直 ...