Java - 将charset编码的新字符串反转为字节

时间:2017-01-28 06:22:38

标签: java arrays character-encoding

好的,所以让我说我读取一个文件并获取其所有字节byte []。

byte[] fileBytes = whatever;

(让我们假装读取字节的是什么)

现在让我们说我用操作系统的默认字符集制作了一个字符串,

String s = new String(fileBytes, Charset.defaultCharset());

在我的情况下,操作系统的默认字符集是windows-1252。

现在因为我们通过默认字符集读取文件,s.getBytes()与fileBytes不同。

我们怎样才能将String知道默认字符集重新转换回原始的fileBytes?

感谢所有人的帮助,谢谢! :)

1 个答案:

答案 0 :(得分:0)

据我说,你可以这样做。反之亦然。

byte[] fileBytes = whatever;
String s = new String(fileBytes, Charset.defaultCharset());

您可以通过执行以下操作来撤消它。

byte[] reversedFileBytes = s.getBytes(Charset.defaultCharset());