程序员在旅途

用这生命中的每一秒,给自己一个不后悔的未来!

0%

Java中将inputstream输入流转换成byte[]字节数组

Java中的I/O机制都是基于数据流进行输入和输出的,将流转换成字节数组保存下来是数据流传输必不可少的一部分。转换的代码如下(在具体场景下需要处理流的关闭问题):

1
2
3
4
5
6
7
8
9
public static byte[] toByteArray(InputStream input) throws IOException {
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    byte[] buffer = new byte[1024*4];
    int n = 0;
    while (-1 != (n = input.read(buffer))) {
        output.write(buffer, 0, n);
    }
    return output.toByteArray();
}