本文简要介绍ruby语言中 Encoding::Converter.putback
的用法。
用法
putback → string
putback(max_numbytes) → string
放回将被转换的字节。
这些字节是由invalid_byte_sequence 错误引起的。当invalid_byte_sequence错误时,一些字节被丢弃,一些字节被缓冲以便以后转换。后面的字节可以放回去。可以通过 Encoding::InvalidByteSequenceError#readagain_bytes
和 Encoding::Converter#primitive_errinfo
观察到。
ec = Encoding::Converter.new("utf-16le", "iso-8859-1")
src = "\x00\xd8\x61\x00"
dst = ""
p ec.primitive_convert(src, dst) #=> :invalid_byte_sequence
p ec.primitive_errinfo #=> [:invalid_byte_sequence, "UTF-16LE", "UTF-8", "\x00\xD8", "a\x00"]
p ec.putback #=> "a\x00"
p ec.putback #=> "" # no more bytes to put back
相关用法
- Ruby Converter.primitive_errinfo用法及代码示例
- Ruby Converter.primitive_convert用法及代码示例
- Ruby Converter.convert用法及代码示例
- Ruby Converter.inspect用法及代码示例
- Ruby Converter.insert_output用法及代码示例
- Ruby Converter.search_convpath用法及代码示例
- Ruby Converter.last_error用法及代码示例
- Ruby Converter.replacement用法及代码示例
- Ruby Converter.replacement =用法及代码示例
- Ruby Converter.new用法及代码示例
- Ruby Converter.finish用法及代码示例
- Ruby Converter.convpath用法及代码示例
- Ruby Converter.asciicompat_encoding用法及代码示例
- Ruby Context.save_history=用法及代码示例
- Ruby Constants模块用法及代码示例
- Ruby Continuation类用法及代码示例
- Ruby Context.echo_on_assignment?用法及代码示例
- Ruby Config.get_value用法及代码示例
- Ruby Context.echo?用法及代码示例
- Ruby Context.echo_on_assignment用法及代码示例
- Ruby Config.to_s用法及代码示例
- Ruby Constructive类用法及代码示例
- Ruby Constructive.each用法及代码示例
- Ruby Context.auto_indent_mode用法及代码示例
- Ruby ConditionVariable类用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Converter.putback。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。