一尘不染

如何在Java中将字符串与UTF8字节数组之间来回转换

java

在Java中,我有一个String,我想将其编码为字节数组(采用UTF8或其他某种编码)。另外,我有一个字节数组(采用某种已知的编码),我想将其转换为Java String。我如何进行这些转换?


阅读 856

收藏
2020-03-04

共1个答案

一尘不染

String转换为byte []

String s = "some text here";
byte[] b = s.getBytes(StandardCharsets.UTF_8);

从byte []转换为String:

byte[] b = {(byte) 99, (byte)97, (byte)116};
String s = new String(b, StandardCharsets.US_ASCII);

当然,你应该使用正确的编码名称。我的示例使用了两种最常见的编码US-ASCII和UTF-8。

2020-03-04