java里面byte数组和String字符串怎么转换

等等,昨天我写代码的时候发生了一些奇怪的事情。
有一个字节数组,存储汉字。
当我直接使用 new String(byteArray) 时,在 Windows 上输出完全乱码。
只需将其更改为 Linux 即可。
当时以为是Linux系统的字体问题,结果发现是字符集没调整好。
Windows默认使用GBK,Linux默认使用UTF-8 这让我想起以前的项目中,在处理网络传输的字符串时,必须显式指定字符集。
例如,如果使用UTF-8 编码然后传输,接收方也必须使用UTF-8 进行解码,否则汉字就会变成“”这样的乱码。
这与字节数组的索引访问有本质的不同。
对字节数组的索引访问是逐字节进行的,但在解码字符串时必须考虑字符编码规则。
哎,我突然想到一个想法:如果字节数组存储的是图像数据,那么转换成字符串会是什么样子呢?

java怎么把string转成数组

java里,如何把String字符串转换成int[]数组?

告诉我如何改变它。
你的例子很清楚。

先拆分逗号。
table_id.split(",") 就可以了。

然后重复每次分离。
将每个转换为 int。

int[] nums = new int[分割后原字符串的长度]; for 循环,我从 0 到 length-1 : nums[i] = Integer.parseInt(str[i]);
不是数字会爆炸。
您需要添加一个 try-catch。

如果你觉得不方便,可以自己写一个方法。

public static int[] stringToIntArray(String str) { String[] strArray = str.split(","); int[] intArray = new int[strArray.length]; for (int i = 0; i < strArray xss=clean>这很容易使用。
你自己看看吧。