我正在尝试使用“gmail_xoauth”gem,不幸的是,gem使用encode("us-ascii")
表示字符串,这仅适用于Ruby 1.9.3。
我不熟悉Ruby 1.9.3中的encode
所以我想知道"string".encode("us-ascii")
是什么,我怎么写它为1.8.7?
答案 0 :(得分:3)
string.encode(“us-ascii”)方法将字符串中的所有字符转换为美国ASCII 7位值。
US-ASCII基本上是纯文本,总共128个字符。在20世纪70年代到90年代,这种编码在美国计算机上很常见。
您现在看到它的原因可能是因为您正在使用电子邮件。电子邮件协议需要对字符串进行US-ASCII编码。
Ruby 1.8.7没有内置的字符串编码方法,因为Ruby 1.8.7将字符串存储为字节,而不是编码字符。
要在Ruby 1.8.7中进行转换,请参阅Iconv库:
http://ruby-doc.org/stdlib-1.8.7/libdoc/iconv/rdoc/Iconv.html
另请参阅此答案中的转换iconv代码示例: