📜  Java.io.FileOutputStream类(1)

📅  最后修改于: 2023-12-03 15:01:34.980000             🧑  作者: Mango

Java.io.FileOutputStream类介绍

Java.io.FileOutputStream类是Java I/O包中用于处理文件输出的类。它允许以字节为单位写入文件。

常用构造函数
public FileOutputStream(File file) throws FileNotFoundException
public FileOutputStream(File file, boolean append) throws FileNotFoundException
public FileOutputStream(String name) throws FileNotFoundException
public FileOutputStream(String name, boolean append) throws FileNotFoundException
  • File参数构造函数:指定文件输出路径
  • boolean参数构造函数:指定是否追加内容到文件尾部
常用方法
public void write(int b) throws IOException
public void write(byte[] b) throws IOException
public void write(byte[] b, int off, int len) throws IOException
public void flush() throws IOException
public void close() throws IOException
  • write(int b):将一个字节写入文件
  • write(byte[] b):将字节数组写入文件
  • write(byte[] b, int off, int len):从字节数组中的偏移量处写入指定长度的字节
  • flush():强制刷新缓冲区
  • close():关闭文件输出流
示例
import java.io.*;

public class TestFileOutputStream {
    public static void main(String[] args) throws IOException {
        String str = "Hello, world!";
        FileOutputStream fos = new FileOutputStream("output.txt");
        byte[] bytes = str.getBytes();

        fos.write(bytes);
        fos.flush();
        fos.close();
    }
}

本示例演示了如何使用Java.io.FileOutputStream类将一个字符串写入文件。在示例代码中,我们创建了一个文件输出流对象fos,使用getBytes()方法将字符串转化为字节数组bytes,并将其写入文件中。最终我们强制刷新流并关闭文件。

需要注意的是,在使用Java.io.FileOutputStream类时,需要手动关闭流来避免资源泄露。我们可以使用Java7引入的try-with-resources语句块自动关闭流。

import java.io.*;

public class TestFileOutputStream {
    public static void main(String[] args) throws IOException {
        String str = "Hello, world!";
        try (FileOutputStream fos = new FileOutputStream("output.txt")) {
            byte[] bytes = str.getBytes();
            fos.write(bytes);
        }
    }
}