如何从字节数组创建String对象
byte arr[MAX_SIZE]; // Java
Run Code Online (Sandbox Code Playgroud)
其中一个数组元素是一个C null终止字节?它就像打电话一样简单
String str = new String( arr );
Run Code Online (Sandbox Code Playgroud)
String构造函数是否知道自动停止在null终止字符处?空字节后的任何字节都是(可能)垃圾字符,我不想包含在字符串中.解析包含未知长度字段的字节数组的最后一个响应建议循环遍历数组并手动查找空终止字符,但我想知道String构造函数是否会自动执行此操作.我还假设系统的默认字符集将用于所有目的.
有:
[46][111][36][11][101][55][87][30][122][75][66][32][49][55][67][77][88][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0]
Run Code Online (Sandbox Code Playgroud)
想:
[46][111][36][11][101][55][87][30][122][75][66][32][49][55][67][77][88]
Run Code Online (Sandbox Code Playgroud)
我有一个字节数大小为8192的数组,从第一个数组中的某个索引开始,直到数组的结尾,字节都是空字节.因此,数组末尾可能有6000个字节的值和2196个空字节.如何有效地创建一个大小的新数组(6000)并复制这些字节?注意:我不知道有多少空字节或带有值的字节.