io内存流的使用ByteArrayOutputStream

//字节内存流:ByteArrayInputStream  ByteArrayOutputStream
//字符内存流:CharArrayReader CharArrayWriter
String str = "Hello*World!!!";
//将所有要读取的数据设置到内存输入流之中
InputStream input = new ByteArrayInputStream(str.getBytes());
//将所有的内存流数据取出
OutputStream output = new ByteArrayOutputStream();
int temp = 0 ; //读取每一个字节数据
//经过此次循环之后,所有的数据都将保存在内存输出流对象之中
while((temp = input.read()) != -1){ //每次读取一个数据
output.write(Character.toUpperCase(temp)); //字节输出流 将字母转大写
}
System.out.println(output);
input.close();
output.close();

//多文件合并读取
File fileA = new File("E:" + File.separator + "infoa.txt");
File fileB = new File("E:" + File.separator + "infob.txt");
InputStream inputA = new FileInputStream(fileA);
InputStream inputB = new FileInputStream(fileB);
ByteArrayOutputStream output2 = new ByteArrayOutputStream();
int temp2 = 0 ; //每次读取一个字节
while((temp2 = inputA.read()) != -1){
output2.write(temp2);
}
int temp3 = 0 ; //每次读取一个字节
while((temp3 = inputB.read()) != -1){
output2.write(temp3);
}
//所有的内容都保存在了内存输出流里面,所以的内容变为字节数组取出
byte data [] = output2.toByteArray();
output2.close();
inputA.close();
inputB.close();
System.out.println(new String(data));
原文地址:https://www.cnblogs.com/xing-nb/p/14813750.html