2

ISO-8859-5をエンコードするためにredisとjedisAPIをテストします。

        String S = new String("Привет мир".getBytes(), "ISO-8859-5");
    redis.lpush("test", S);
    System.out.println(redis.lpop("test"));

結果として、私は次のようになります:а�б�аИаВаЕб�аМаИб�</ p>

次に、SafeEncoderを使用してみます。

        String S = new String("Привет мир".getBytes(), "ISO-8859-5");
    redis.lpush("test", S);
    byte[] Result = SafeEncoder.encode(redis.lpop("test"));
    System.out.println(new String(Result));

結果:аАТаБТаАааАааАааБТаАааАааБТ

私は何を間違えますか?それは私ですか、それともredisですか、それともジェダイですか?

4

2 に答える 2

0

情報をUTF-8に変換してみてください。
ちなみに、キリル文字のエンコードに問題がある場合は、このサイトが役立つ場合があります(2cyr.com

于 2011-11-15T11:40:00.307 に答える
0

バイナリ形式を直接使用できます

byte[] b = "Привет мир".getBytes();
redis.lpush(SafeEncoder.encode("test"), b);
System.out.println(redis.lpop("test"));
于 2011-12-22T01:30:01.173 に答える