1 回答

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超2個(gè)贊
中沒有這樣的幫手redigo。這是我的實(shí)現(xiàn):
func hasBit(n byte, pos uint) bool {
val := n & (1 << pos)
return (val > 0)
}
func getBitSet(redisResponse []byte) []bool {
bitset := make([]bool, len(redisResponse)*8)
for i := range redisResponse {
for j:=7; j>=0; j-- {
bit_n := uint(i*8+(7-j))
bitset[bit_n] = hasBit(redisResponse[i], uint(j))
}
}
return bitset
}
用法:
response, _ := redis.Bytes(r.Do("GET", "testbit2"))
for key, value := range getBitSet(response) {
fmt.Printf("Bit %v = %v \n", key, value)
}
- 1 回答
- 0 關(guān)注
- 240 瀏覽
添加回答
舉報(bào)