Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Encoding 为什么绝地武士不能';获取';输出由redis-cli.exe设置的中文字符?_Encoding_Redis_Jedis - Fatal编程技术网

Encoding 为什么绝地武士不能';获取';输出由redis-cli.exe设置的中文字符?

Encoding 为什么绝地武士不能';获取';输出由redis-cli.exe设置的中文字符?,encoding,redis,jedis,Encoding,Redis,Jedis,我使用win-redis-server-2.6来存储一些简单的键值对, redis-cli.exe设置键值,然后通过Jedis获取值 首先,, redis cli>设置foo“中" 回复正常 那么, 使用绝地武士 JedisPoolConfig poolConfig = new JedisPoolConfig(); jPool = new JedisPool(poolConfig, host, port); Jedis jedis = jPool.getResource(); String te

我使用win-redis-server-2.6来存储一些简单的键值对, redis-cli.exe设置键值,然后通过Jedis获取值

首先,, redis cli>设置foo“中" 回复正常

那么, 使用绝地武士

JedisPoolConfig poolConfig = new JedisPoolConfig();
jPool = new JedisPool(poolConfig, host, port);
Jedis jedis = jPool.getResource();
String test= jedis.get("foo");
System.out.println(test);
但是,我有这个 �� 我已经搜索了这个问题,但没有得到任何帮助

这两种方法都不能解决我的问题,因为我必须利用绝地武士来获取价值

我试过了 redis cli—原始获取foo 这可以得到值,但是当我删除--raw选项时,redis-cli.exe就崩溃了

对于设置值,我尝试使用hiredis-C-client设置值,但也遇到了问题

但当我通过绝地设定价值,并通过绝地获得价值时,这是可以的

我还试着用下面的代码解码绝地武士传出来的值 String newStr=新字符串(test.getBytes(“UTF-8”),“UTF-8”); 我试过“GBK”、“GB2312”、“ISO-8859-1”,但都失败了

谁能帮帮我吗? 提前谢谢


Kong

最后,我们使用另一种方法来实现此功能


也就是说,我们用UTF8编码我们想在redis中设置的任何中文值。之后,我可以从绝地武士那里得到正确的字符串。

我猜
set foo“中“”正在为您创建问题。您可以尝试通过JDIS本身添加数据吗?谢谢,我已经尝试了JDIS本身设置的值,可以。但是我们必须通过“ReDIS CLI.exe”或“HiReIsC++客户端”来设置值,当我使用HIRIDSIS客户端将值设置为ReDIS时,问题也会发生。