Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java OutputStream 类

在本教程中,我们将通过一个示例学习Java OutputStream及其方法。

java.io包的OutputStream类是一个抽象超类,它表示字节的输出流。

因为OutputStream是一个抽象类,所以它本身并不有用。但是,它的子类可以用来写数据。

OutputStream的子类

为了使用OutputStream的功能,我们可以使用其子类。他们之中有一些是:

Java OutputStream的子类是FileOutputStream,ByteArrayOutputStream和ObjectOutputStream。

在下一个教程中,我们将学习所有这些子类。

创建一个OutputStream

为了创建OutputStream,我们必须先导入java.io.OutputStream包。导入包后,就可以创建输出流。

//创建一个OutputStream
OutputStream object = new FileOutputStream();

在这里,我们使用创建了一个输出流对象FileOutputStream。因为OutputStream是一个抽象类,所以我们不能创建的对象OutputStream。

注意:我们还可以从OutputStream类的其他子类创建输出流。

OutputStream的方法

OutputStream类提供了由其子类实现的不同方法。 以下是一些方法:

  • write() - 将指定的字节写入输出流

  • write(byte[] array) - 将指定数组中的字节写入输出流

  • flush() -  强制将输出流中存在的所有数据写入目标

  • close() - 关闭输出流

示例:使用FileOutputStream的OutputStream

下面是使用FileOutputStream类实现OutputStream的方法。

import java.io.FileOutputStream;
import java.io.OutputStream;

public class Main {

    public static void main(String args[]) {
        String data = "这是文件内的一行文本。";

        try {
            OutputStream out = new FileOutputStream("output.txt");

            //将字符串转换为字节
            byte[] dataBytes = data.getBytes();

            //将数据写入输出流
            out.write(dataBytes);
            System.out.println("数据被写入文件。");

            //关闭输出流
            out.close();
        }

        catch (Exception e) {
            e.getStackTrace();
        }
    }
}

在上面的示例中,我们使用FileOutputStream类创建了一个输出流。现在,输出流已与文件output.txt链接。

OutputStream out = new FileOutputStream("output.txt");

要将数据写入output.txt文件,我们已经实现了这些方法。

output.write();      //将数据写入文件
output.close();      //关闭输出流

当我们运行程序时,output.txt文件将写入以下内容。

这是文件内的一行文本。