内容发布更新时间 : 2024/11/17 7:50:12星期一 下面是文章的全部内容请认真阅读。
【济南中心】JAVA编程阶梯:基础篇之第二十二章
IO流之序列流: 1.什么是序列流
* 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推. 2.使用方式
* 整合两个: SequenceInputStream(InputStream, InputStream) [Java] 纯文本查看 复制代码 ?
01 FileInputStream fis1 = new FileInputStream(\//创建输入流对象,关联a.txt 02 FileInputStream fis2 = new FileInputStream(\//创建输入流对象,关联b.txt
03 SequenceInputStream sis = new SequenceInputStream(fis1, fis2); //将两个流整合成一个流 04 FileOutputStream fos = new FileOutputStream(\//创建输出流对象,关联c.txt 05 06 int b;
07 while((b = sis.read()) != -1) { //用整合后的读 08 fos.write(b); //写到指定文件上 09 } 10
11 sis.close(); 12 fos.close();
黑马程序员济南中心 编著
IO流之序列流整合多个:
整合多个: SequenceInputStream(Enumeration) [Java] 纯文本查看 复制代码 ?
01 FileInputStream fis1 = new FileInputStream(\//创建输入流对象,关联a.txt 02 FileInputStream fis2 = new FileInputStream(\//创建输入流对象,关联b.txt 03 FileInputStream fis3 = new FileInputStream(\//创建输入流对象,关联c.txt 04 Vector
08 Enumeration
09 SequenceInputStream sis = new SequenceInputStream(en); //传递给SequenceInputStream10 FileOutputStream fos = new FileOutputStream(\11 int b;
12 while((b = sis.read()) != -1) { 13 fos.write(b); 14 } 15
16 sis.close(); 17 fos.close(); IO流之内存输出流:
黑马程序员济南中心 编著
1.什么是内存输出流
* 该输出流可以向内存中写数据, 把内存当作一个缓冲区, 写出之后可以一次性获取出所有数据 2.使用方式
* 创建对象: new ByteArrayOutputStream() * 写出数据: write(int), write(byte[]) * 获取数据: toByteArray() [Java] 纯文本查看 复制代码 ?
01 FileInputStream fis = new FileInputStream(\
02 ByteArrayOutputStream baos = new ByteArrayOutputStream(); 03 int b;
04 while((b = fis.read()) != -1) { 05 baos.write(b); 06 } 07
08 //byte[] newArr = baos.toByteArray(); //将内存缓冲区中所有的字节存储在newArr中09 //System.out.println(new String(newArr)); 10 System.out.println(baos); 11 fis.close();
例子:定义一个文件输入流,调用read(byte[] b)方法,将a.txt文件中的内容打印出来(byte数组大小限制为5)
黑马程序员济南中心 编著