我使用win-redis-server-2.6来存储一些简单的键值对, redis-cli.exe设置键值,然后通过Jedis获取值。
首先, redis-cli>设置foo“中” 响应是好的
然后, 使用Jedis
JedisPoolConfig poolConfig = new JedisPoolConfig();
jPool = new JedisPool(poolConfig, host, port);
Jedis jedis = jPool.getResource();
String test= jedis.get("foo");
System.out.println(test);
但是,我得到了这个 我已经搜索了这个问题,但我没有帮助。
Redis - problem with accents (UTF-8 encoding) How to save and retrieve string with accents in redis?
这两种方式无法解决我的问题,因为我必须使用jedis来获取价值。
我试过了 redis-cli --raw get foo 这可以得出值,但是当我删除--raw选项时,redis-cli.exe就崩溃了。
对于设定值,我尝试使用hiredis-C-client设置值,但我也遇到了问题。
但是当我通过Jedis设置值并使用Jedis获取值时,没关系。
此外,我尝试使用以下代码解码jedis输出的值 String newStr = new String(test.getBytes(“UTF-8”),“UTF-8”); 我试过“GBK”,“GB2312”,“ISO-8859-1”,但都失败了。
有人可以帮帮我吗? 提前谢谢。
Kong
答案 0 :(得分:0)
最后,我们使用另一种方式来实现这个功能。
那就是我们用UTF8编码我们想要在redis中设置的任何中文值。在此之后,我可以通过Jedis获得正确的字符串。