2016-06-21 358 views
1

我试图在Redis键中存储一个数值作为值。例如,我想存储一个值4.我不希望它被存储为“4”。为什么我需要这个?因为当我检索这个值时,我会对它进行一些按位操作。如果它存储为“4”(而不是4),则实际存储在Redis中的值似乎为52(即... 00110100而不是00000100)。Redis如何存储一个数字而不是字符串

您可能会问,为什么我不使用Redis bithop。原因是我必须存储许多位的数组。我不想在循环中做redis bithop。我只是想在本地创建一个等效数组并通过调用set命令来上传它。

在Javascript中,我试图做

redis.set(key, 4) 

显然没有奏效。然后我试了

redis.set(key, "\x04") 

这个工程。但是,如何通过转换为这种格式来存储字节数组?我在这里错过了什么?

回答

1

从内部来看,如果数据类型的所有值都是数值型的,那么数据就以其数字表示形式存储。否则,数据以字符串形式存储。据我所知,你不能强迫Redis为单个数据点使用一种特定的表示方法,反正你总能得到一个字符串的值。你需要自己解析这个值并将其转换为一个整数,浮点数等。

相关问题