IMO最简单的方法是使用番石榴及其
ByteStreams类:
byte[] bytes = ByteStreams.toByteArray(in);
或对于文件:
byte[] bytes = Files.toByteArray(file);
或者,(如果您不想使用Guava),可以创建一个
ByteArrayOutputStream,然后反复读取一个字节数组并写入
ByteArrayOutputStream(让其处理大小调整),然后调用
ByteArrayOutputStream.toByteArray()。
请注意,无论您是否可以判断输入的长度,这种方法都有效-当然,假设您有足够的内存。



