我想将像
سلام
这样的阿拉伯字符保存在 Redis 哈希中,如下所示:
HMSET arabicHash "سلام" 5
OK
但是结果并不如预期:
127.0.0.1:6379> HGETALL arabicHash
1) "\xd8\xb3\xd9\x84\xd8\xa7\xd9\x85"
2) "5"
我想知道是否有办法直接将
سلام
保存到redis set中?如果没有,我如何在检索后将 "\xd8\xb3\xd9\x84\xd8\xa7\xd9\x85"
转换回人类可读的字符?
更新:我已经在我的 Ubuntu Bash 终端上进行了测试,但结果在这里格式不正确。截图:
请注意,
redis-cli
默认显示字节编码字符(人类无法阅读),但有一个--raw
开关用于以解码为字符串的格式显示它们,即以人类可读的形式(作为Redis开发人员)他自己回答这里):
$ redis-cli --raw -a $REDIS_PASSWORD
127.0.0.1:6379> HMSET test.hash 123 gęś
OK
127.0.0.1:6379> HGETALL test.hash
123
gęś
...与默认值相比:
$ redis-cli -a $REDIS_PASSWORD
127.0.0.1:6379> HMSET test.hash 321 gęś
OK
127.0.0.1:6379> hgetall test.hash
1) "123"
2) "g\xc4\x99\xc5\x9b"
3) "321"
4) "g\xc4\x99\xc5\x9b"