class Encoding

Encoding 的实例表示 Ruby 中可用的字符编码。 它被定义为 Encoding 命名空间下的常量。它有一个名称,以及可选的别名。

Encoding::US_ASCII.name  # => "US-ASCII"
Encoding::US_ASCII.names # => ["US-ASCII", "ASCII", "ANSI_X3.4-1968", "646"]

接受编码作为参数的 Ruby 方法将接受:

这些是等效的

'foo'.encode(Encoding::US_ASCII) # Encoding object.
'foo'.encode('US-ASCII')         # Encoding name.
'foo'.encode('ASCII')            # Encoding alias.

关于编码及其用法的全面讨论,请参阅 编码文档

Encoding::ASCII_8BIT 是一种特殊用途的编码,通常用于字节字符串,而不是字符字符串。但是,正如名称所示,其 ASCII 范围内的字符被视为 ASCII 字符。当您使用其他 ASCII 兼容的编码时,这很有用。