如何从Ruby中的ZooKeeper读取长数据

时间:2014-03-11 03:12:01

标签: ruby bytearray apache-zookeeper

我正在使用ZK gem从ZooKeeper读取数据。当我在znode中获取字符串数据时它很有效,但如果它是一个长数据,我得到一个字节数组,并且无法转换为长变量。我尝试过Array#pack但它没有用。

数据在Java中存储为big-endian字节数组。

1 个答案:

答案 0 :(得分:1)

最后,我可以按照自己的方式将字节转换为long。

l = 0
bytes.each_byte do |byte|
  l = l << 8
  l ^= byte & 0xff
end