Redis的二进制存读

存储:

 

SETBIT key offset value

 

对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。位的设置或清除取决于 value 参数,可以是 0 也可以是 1 。当 key 不存在时,自动生成一个新的字符串值。字符串会进行伸展(grown)以确保它可以将 value 保存在指定的偏移量上。当字符串值进行伸展时,空白位置以 0 填充。offset 参数必须大于或等于 0 ,小于 2^32 (bit 映射被限制在 512 MB 之内)。

 

获取:

 

GETBIT key offset

 

对 key 所储存的字符串值,获取指定偏移量上的位(bit)。当 offset 比字符串值的长度大,或者 key 不存在时,返回 0 

 

redis  xxx:6422> getbit 22534899:flag 16

(integer) 0

 

 

GET key

 

有时我们需要看整个二进制的数据,此时可以通过get获取,但是获取到的为十六进制数据\x80\x98

 

redis xxx:6422> get 22534899:flag

"\x80\x98"

 

此时可以将该数据转成2进制为1000 0000 1001 1000,要注意左边的为低位,右边的为高位,getbit key 0 就代表的左边第一位

 

你可能感兴趣的:(redis)