Ruby Encoding类

Encoding类
 内部编码  IO对象内部处理时候的编码 
 外部编码  IO对象对外输出的时候的编码
 输入  外部字符与自己的外部编码对比(没设定的默认
                     Encoding.default.encoding)
 内部编码没设定的不转换
 内部编码设定的则从外部编码转换为内部编码
 转换不了会报错
 输出  外部编码没设定的不转换
 设定的则转换为外部编码
 转换不了会报错
 方法  
 获取  str.encoding()
 设置编码  str.encode("UTF-8")
   
 查询是否可连接  Encoding.compatibel?(str1, str2)
 可以连接返回连接后的字符编码
 不可以则返回nil
   
 获取默认内部编码  Encoding.default_external()
 获取默认外部编码  Encoding.default_internal()
 获取指定编码  Encoding.find(name)
 name: 编码名称
 下面四个特殊的单独提供
 locate  当前位置的编码
 external  外部编码
 internal  内部编码
 filesystem  文件系统编码
 获取所有编码  
 Encoding.list  所有编码
 Encoding.name_list  所有编码名字
 str
 获取编码名字  enc = Encoding.find("...")
 
 enc.name()  获取名字 
 enc.names()  获取所有名字
 获取指定对象编码  
 获取对象外部编码  io.external_encoding()
 获取对象内部编码  io.internal_encoding()
 设置对象编码  io.set_encoding("ex:in")
 "ex:in" 外部:内部编码
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 

 

posted @ 2017-05-21 13:09  懒虫哥哥  阅读(197)  评论(0编辑  收藏  举报