Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
Java 如何转换成西里尔语_Java_String_Type Conversion_Decode - Fatal编程技术网

Java 如何转换成西里尔语

Java 如何转换成西里尔语,java,string,type-conversion,decode,Java,String,Type Conversion,Decode,你好 我从服务器上得到了这样的字符串 \u041a\u0438\u0441\u0435\u043b\u0435\u0432 \u0410\u043d\u0434\u0440\u0435\u0439 我需要把它转换成西里尔字母cp-1251字符串 我该怎么做?谢谢。如果这是一个必须解码的文字字符序列,您需要先从以下内容开始(假设您的输入是字符串输入): 此时,您应该在decodedInput中拥有输入的java字符串表示 如果您的系统支持cp-1251字符集,则可以通过以下方式将其转换为cp-1

你好

我从服务器上得到了这样的字符串

\u041a\u0438\u0441\u0435\u043b\u0435\u0432 \u0410\u043d\u0434\u0440\u0435\u0439
我需要把它转换成西里尔字母cp-1251字符串


我该怎么做?谢谢。

如果这是一个必须解码的文字字符序列,您需要先从以下内容开始(假设您的输入是字符串输入):

此时,您应该在decodedInput中拥有输入的java字符串表示

如果您的系统支持cp-1251字符集,则可以通过以下方式将其转换为cp-1251:

Charset cp1251charset = Charset.forName("cp-1251");
ByteBuffer output = cp1251charset.encode(decodedInput.toString());

这没用。字符集将输入字符串的每个字符转换为字节。所以\u041a转换为6个字节,但必须转换为2个字节04+1a。对不起,我以为您显示的是java字符串表示-我没有意识到这是一个文字字符序列。更新了我的答案。哇。这太奇怪了——这么简单的任务需要复杂的技巧。谢谢你-你让我开心。。。
Charset cp1251charset = Charset.forName("cp-1251");
ByteBuffer output = cp1251charset.encode(decodedInput.toString());