和文件的读取操作类似,不同的是构造函数中是用 byte[]来初始化 ByteArrayInputStream
package com.machuang.io.others; import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; public class ByteArray { public static void main(String[] args) throws IOException { byteArrayRead(); } public static void byteArrayRead() throws IOException { // 创造字节数组,(从服务器或者其他主机上传来的 byte[]) String msg = "和文件读取操作一样"; byte[] msgBytes = msg.getBytes(); // 待读取的字节数组 InputStream bis = new BufferedInputStream( new ByteArrayInputStream(msgBytes) ); // byteBuf byte[] byteBuf = new byte[1024]; int len = 0; // 读取操作 while(-1 != (len = bis.read(byteBuf))) { System.out.println(new String(byteBuf, 0, len)); } bis.close(); } }