如何将java字符串转换为代码页857

时间:2017-11-13 10:24:06

标签: java

我需要将java字符串转换为Code Page 857。我将此字符串发送到另一个系统,该系统逐字节读取字符串。如果此字符串包含任何一些土耳其字符,它将消耗2个字节。所以客户端(外部系统所有者)希望我们将字符串转换(设置标准)到代码页857(用于在DOS操作系统下编写土耳其语字符的标准)

如果有人可以帮我这个,请告诉我 提前致谢 沙棘

1 个答案:

答案 0 :(得分:3)

在内部,Java将所有字符串表示为UTF-16。因此,String对象本身无法转换为特定的代码页。

但是,您可以获取一个字节数组,该数组使用特定字符集对进行编码:

String.getBytes(Charset charset)

在您的情况下,您应该使用:

byte[] stringAsByteArray=myString.getBytes(Charset.forName("Cp857"));

根据here,Java应该支持Cp857,但你应该用

来检查
Charset.isSupported("Cp857");