尝试让aerospike ruby客户机在1.8版本下工作
Ruby1.8中这些调用的等价物是什么?
https://github.com/aerospike/aerospike-client-ruby/blob/master/lib/aerospike/utils/buffer.rb#L65
https://github.com/aerospike/aerospike-client-ruby/blob/master/lib/aerospike/utils/buffer.rb#L95
发布于 2014-12-02 14:28:25
IIRC,Ruby 1.8字符串,在所有的意图和目的上,1.9都会被视为ASCII-8位。因此,String#[]
和String#[]=
是在评论中已经建议的继续进行的方式。( 1.9中的相同函数将针对某个偏移量处的潜在多字节字符,而不是一个字节。)
有关Ruby M17N以及字符串在Ruby1.9中如何更改的更完整的讨论,请参阅:
发布于 2014-12-02 17:14:10
而不是依赖于特定版本的Ruby如何处理字节/字符/字符串,而是使用pack
和unpack
方法。它们始终可用,并且行为一致。
为了你的使用,将数据分成一个数组,然后你可以使用普通的数组切片来改变有问题的字节,然后pack
所有的东西回到字节流中。
https://stackoverflow.com/questions/27251336
复制相似问题