代码的开头有一行#encoding BINARY
,这是什么意思?
答案 0 :(得分:2)
http://ruby.runpaint.org/encoding
Ruby定义了一个名为ASCII-8BIT的编码,其别名为BINARY,它与任何已知编码都不对应。它旨在与二进制数据相关联,例如组成PNG图像的字节,因此对内容没有限制。一个字节始终对应一个字符。例如,这允许将String视为字节包而不是字符序列。因此,ASCII-8BIT实际上对应于缺少编码,因此期望编码名称的方法将nil识别为同义词。
答案 1 :(得分:0)
这一行是我们如何告诉Ruby解释器期望源文件中的某个字符集。
詹姆斯·格雷(James Gray)有一篇关于在Ruby中处理character encodings的精彩系列文章。特别是,如果您想了解详细信息,“Ruby 1.9's Three Default Encodings ”可能是一个很好的阅读。