Alw*_*ing 5 java string byte bytearray
我有一个由1024个元素组成的字节数组.我想将其分解为不同的字符串私有成员(例如,名称的前9个字节,userID的后12个字节等).
无需将整个字节数组转换为字符串然后使用子字符串方法,有什么办法可以将数组中的字节范围直接转换为我的类的私有成员?
例如
myObject.name = byteArr[0-9];
myObject.userId = byteArr[10-21];
Run Code Online (Sandbox Code Playgroud)
使用:
String myField = new String(myArray, start, end);
Run Code Online (Sandbox Code Playgroud)
start如果你想从头开始,那么它将是0
使用String构造函数:
public String(byte bytes[], int offset, int length, Charset charset)
Run Code Online (Sandbox Code Playgroud)
例:
myObject.name = new String(byteArr, 0, 10, Charset.defaultCharset())
Run Code Online (Sandbox Code Playgroud)
请记住,字节和字符在Java中是不同的类型,您应该使用Charset类指定正确的转换以避免意外结果.
| 归档时间: |
|
| 查看次数: |
4975 次 |
| 最近记录: |