Java:以另一种编码方式将UTF8字符串转换为字节数组

Java:以另一种编码方式将UTF8字符串转换为字节数组,java,encoding,cp1251,Java,Encoding,Cp1251,我有UTF8编码的字符串,但我需要将参数发布到cp1251中的运行时进程。如何解码字符串或字节数组 我需要smth,比如:.bytesInCp1251=encodeTo(stringInUtf8,“cp1251”) 谢谢大家!这是我自己的解决方案: OutputStreamWriter writer = new OutputStreamWriter(out, "cp1251"); writer.write(s); Java中没有“UTF8编码字符串”。Java字符串在内部使用UTF-16,但

我有UTF8编码的字符串,但我需要将参数发布到cp1251中的运行时进程。如何解码字符串或字节数组

我需要smth,比如:.
bytesInCp1251=encodeTo(stringInUtf8,“cp1251”)


谢谢大家!这是我自己的解决方案:

OutputStreamWriter writer = new OutputStreamWriter(out, "cp1251");
writer.write(s);

Java中没有“UTF8编码字符串”。Java字符串在内部使用UTF-16,但应视为没有特定编码的抽象。如果你有一个字符串,它已经被解码了。如果要对其进行编码,请使用
string.getBytes(编码)
。如果原始数据是UTF-8,那么在将数据从字节转换为字符串时,必须考虑到这一点。

这是一种解决方案

OutputStreamWriter writer = new OutputStreamWriter(out, "cp1251");
writer.write(s);

我的问题在那里没有答案。我需要更改编码。您的可能副本应使用解决方案更新您自己的答案,而不是将其隐藏在此处。
OutputStreamWriter writer = new OutputStreamWriter(out, "cp1251");
writer.write(s);