【发布时间】:2020-12-21 14:43:17
【问题描述】:
我将字节数组msg 转换为字符串encodedmsg,格式为ISO-8859-1,如下所示:String encodedmsg = new String(msg, "ISO-8859-1");
我不知道现在如何从我的字符串encodedmsg 回到字节数组msg,基本上恢复了我最初所做的事情。任何帮助都会非常感激:)
【问题讨论】:
我将字节数组msg 转换为字符串encodedmsg,格式为ISO-8859-1,如下所示:String encodedmsg = new String(msg, "ISO-8859-1");
我不知道现在如何从我的字符串encodedmsg 回到字节数组msg,基本上恢复了我最初所做的事情。任何帮助都会非常感激:)
【问题讨论】:
您可以通过以下方式回复 byte[]:
byte[] arr = encodedmsg.getBytes(Charset.forName("ISO-8859-1"));
演示:
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
import java.util.Arrays;
public class Main {
public static void main(String[] args) throws UnsupportedEncodingException {
byte[] msg = "hello".getBytes();
System.out.println(Arrays.toString(msg));
String encodedmsg = new String(msg, "ISO-8859-1");
System.out.println(encodedmsg);
byte[] arr = encodedmsg.getBytes(Charset.forName("ISO-8859-1"));
System.out.println(Arrays.toString(arr));
}
}
输出:
[104, 101, 108, 108, 111]
hello
[104, 101, 108, 108, 111]
【讨论】:
new String(encodedmsg.getBytes("ISO-8859-1"));
【讨论】: