byte转 ArrayList<String>
时间: 2023-11-15 22:15:39 浏览: 282
可以使用Java的ByteArrayInputStream和DataInputStream来实现byte数组转换为ArrayList<String>。以下是一个例子:
```java
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.util.ArrayList;
public class ByteArrayListConverter {
public static void main(String[] args) {
byte[] bytes = {65, 66, 67, 68}; // 示例byte数组
ArrayList<String> stringList = byteArrayToArrayList(bytes);
// 打印结果
for (String s : stringList) {
System.out.println(s);
}
}
public static ArrayList<String> byteArrayToArrayList(byte[] bytes) {
ArrayList<String> arrayList = new ArrayList<>();
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
DataInputStream dataInputStream = new DataInputStream(byteArrayInputStream);
try {
while (dataInputStream.available() > 0) {
String s = dataInputStream.readUTF();
arrayList.add(s);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
byteArrayInputStream.close(); dataInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return arrayList;
}
}
```
上述代码将byte数组转换为一个包含字符串的ArrayList。注意,这里使用了DataInputStream的readUTF方法来读取字符串,所以要求byte数组中的数据必须是用UTF编码的字符串。如果byte数组中的数据是其他类型的数据,需要根据实际情况做相应的处理。
阅读全文