15.5.3 字节类型外的文件输出
本节主要介绍“FilterOutputStream”类,图15.5描述了这个类的用处。
仔细分析图15.5,数据的数据类型可以是字节、字符、整型、浮点型等。先通过“FilterOutputStream”类,将所有这些类型的数据分解成字节类型的数据,再将字节类型的数据通过“FileOutputStream”类向目标对象输出数据。
图 15.5 FilterOutputStream模拟图
【实例15.9】下面看一个有关“FilterOutputStream”类的实例。
01 import java.io.*;
02 ///创建一个文件类对象f
03 ///创建一个文件输出流对象fos,并且以f作为参数
04 ///创建一个过滤输出流对象filter,并且以fos作为参数
05 ///通过循环语句往f中写入数据
06 public class file8
07 {
08 public static void main(String[]args)throws Exception
09 {
10 File f=new File("d:\filetest\1.txt");
11 FileOutputStream fos=new FileOutputStream(f);
12 FilterOutputStream filter=new FilterOutputStream(fos);
13 for(int i=’a’;i<’z’;i++)
14 {
15 filter.write(i);
16 }
17 fos.close();
18 }
19 }
【代码说明】从上面的程序段可以看出,“FilterOutputStream”类不像使用“FileOutputStream”类那样,必须要使用字节数组来存储数据。“FilterOutputStream”类可以直接处理除字节外的数据。
【运行效果】在1.txt中输出英文小写字母,读者可以打开此文件观察结果。
其实“FilterOutputStream”类和“FilterInputStream”类同样很难处理整型、字符串型等的数据。那么遇到这种类型的数据,应该如何处理呢?下面将引进两个类专门处理这些数据。