Lớp Java FileOutputStream – Codefly.Vn

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về Java FileOutputStream và các phương thức của nó với sự trợ giúp của các ví dụ.

Các FileOutputStreamlớp của java.iogói có thể được sử dụng để ghi dữ liệu (tính theo byte) để các tập tin.

Nó mở rộng OutputStreamlớp trừu tượng.

Trước khi bạn tìm hiểu về FileOutputStream, hãy chắc chắn rằng bạn đã biết về Tệp Java .

Tạo một FileOutputStream

Để tạo luồng xuất tệp, java.io.FileOutputStreamtrước tiên chúng ta phải nhập gói. Sau khi chúng tôi nhập gói, đây là cách chúng tôi có thể tạo luồng xuất tệp trong Java.

1. Sử dụng đường dẫn đến tệp

// Including the boolean parameter
FileOutputStream output = new FileOutputStream(String path, boolean value);

// Not including the boolean parameter
FileOutputStream output = new FileOutputStream(String path);

Ở đây, chúng tôi đã tạo một luồng đầu ra sẽ được liên kết với tệp được chỉ định bởi đường dẫn .

Ngoài ra, giá trị là một tham số boolean tùy chọn. Nếu nó được đặt thành true, dữ liệu mới sẽ được nối vào cuối dữ liệu hiện có trong tệp. Nếu không, dữ liệu mới sẽ ghi đè lên dữ liệu hiện có trong tệp.

2. Sử dụng một đối tượng của tệp

FileOutputStream output = new FileOutputStream(File fileObject);

Ở đây, chúng tôi đã tạo một luồng đầu ra sẽ được liên kết với tệp được chỉ định bởi fileObject.

Phương thức của FileOutputStream

Các FileOutputStreamlớp học cung cấp triển khai cho các phương pháp khác nhau trình bày trong OutputStreamlớp.

viết phương pháp

  • write() – writes the single byte to the file output stream
  • write(byte[] array) – writes the bytes from the specified array to the output stream
  • write(byte[] array, int start, int length) – writes the number of bytes equal to length to the output stream from an array starting from the position start

Ví dụ: FileOutputStream để ghi dữ liệu vào một Tệp

import java.io.FileOutputStream;

public class Main {
    public static void main(String[] args) {
        
        String data = "This is a line of text inside the file.";

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

            byte[] array = data.getBytes();

            // Writes byte to the file
            output.write(array);

            output.close();
        }

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

Trong ví dụ trên, chúng ta đã tạo một luồng xuất tệp có tên là output . Luồng xuất tệp được liên kết với tệp output.txt .

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

Để ghi dữ liệu vào tệp, chúng tôi đã sử dụng write()phương pháp.

Ở đây, khi chúng ta chạy chương trình, tệp output.txt sẽ chứa nội dung sau.

This is a line of text inside the file.

Lưu ý : getBytes()Phương thức được sử dụng trong chương trình chuyển đổi một chuỗi thành một mảng byte.

phương thức flush ()

Để xóa luồng đầu ra, chúng ta có thể sử dụng flush()phương pháp. Phương thức này buộc luồng đầu ra ghi tất cả dữ liệu vào đích. Ví dụ,

import java.io.FileOutputStream;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {

        FileOutputStream out = null;
        String data = "This is demo of flush method";

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

            // Using write() method
            out.write(data.getBytes());

            // Using the flush() method
            out.flush();
            out.close();
        }
        catch(Exception e) {
            e.getStackTrace();
        }
    }
}

Khi chúng tôi chạy chương trình, tệp flush.txt được điền bằng văn bản được đại diện bởi chuỗi data.

phương thức close ()

Để đóng luồng xuất tệp, chúng ta có thể sử dụng close()phương pháp. Khi phương thức được gọi, chúng ta không thể sử dụng các phương thức của FileOutputStream.

Các phương pháp khác của FileOutputStream

MethodsDecfscriptionsfinalize()ensures that the close() method is calledgetChannel()returns the object of FileChannel associated with the output streamgetFD()returns the file decfscriptor associated with the output stream

Để tìm hiểu thêm, hãy truy cập Java FileOutputStream (tài liệu Java chính thức) .