FilterOutputStream、FileOutputStream和ObjectOutputStream的特点
时间: 2024-02-02 10:09:03 浏览: 137
Java定义的输入输出流-sk68xxmini-x rev.08 cn
FilterOutputStream、FileOutputStream和ObjectOutputStream是Java中常用的输出流类,它们的特点如下:
1. FilterOutputStream:FilterOutputStream是一个过滤流,它可以将数据写入到另一个输出流中,并且可以在写入数据时进行一些过滤操作。例如,可以使用BufferedOutputStream对数据进行缓冲,或者使用DataOutputStream将数据转换为基本数据类型后再写入。FilterOutputStream还可以通过继承它来创建自定义的过滤流。
2. FileOutputStream:FileOutputStream是一个输出流,它可以将数据写入到文件中。它的构造函数可以接受一个文件名或者一个File对象作为参数,用于指定要写入的文件。FileOutputStream还可以通过指定追加模式来将数据追加到文件的末尾。
3. ObjectOutputStream:ObjectOutputStream是一个输出流,它可以将Java对象写入到输出流中。它可以将Java对象的基本数据类型和图形写入到OutputStream中,并且可以对要写入的持久字段进行编程访问。ObjectOutputStream还可以通过实现writeObject()方法来自定义对象的序列化过程。
示例代码如下:
```java
// FilterOutputStream示例
OutputStream out = new FileOutputStream("output.txt");
out = new BufferedOutputStream(out);
out.write("Hello, world!".getBytes());
out.flush();
out.close();
// FileOutputStream示例
OutputStream out = new FileOutputStream("output.txt");
out.write("Hello, world!".getBytes());
out.close();
// ObjectOutputStream示例
OutputStream out = new FileOutputStream("output.txt");
ObjectOutputStream objOut = new ObjectOutputStream(out);
objOut.writeObject(new MyClass());
objOut.flush();
objOut.close();
```
阅读全文