Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Класс Java FileOutputStream: подробное руководство

Класс Java FileOutputStream

Класс FileOutputStream из пакета java.io позволяет записывать сырые байтовые данные в файлы. Он расширяет абстрактный OutputStream и необходим для бинарных файловых операций.


Создание FileOutputStream

Импортируйте класс из java.io и инстанцируйте его путём к файлу или объектом File.

1. Использование пути к файлу

// С флагом append
FileOutputStream output = new FileOutputStream(String path, boolean append);
// Без флага append
FileOutputStream output = new FileOutputStream(String path);

Булев append определяет: добавлять данные в конец файла (true) или перезаписывать существующее содержимое (false).

2. Использование объекта File

FileOutputStream output = new FileOutputStream(File fileObject);

Этот конструктор связывает поток с файлом, представленным fileObject.


Ключевые методы FileOutputStream

FileOutputStream реализует несколько унаследованных методов из OutputStream для байтовых операций.

write()

Пример: запись текста в файл

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();
            output.write(array);
            output.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Запуск программы создаёт output.txt с приведённым выше предложением. Метод getBytes() преобразует строку в её UTF-8 байтовое представление.

flush()

Метод flush() принудительно сбрасывает буферизованные байты в файл немедленно. Полезен, когда нужно гарантировать сохранность данных перед закрытием потока.

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

public class Main {
    public static void main(String[] args) throws IOException {
        FileOutputStream out = new FileOutputStream("flush.txt");
        String data = "This is demo of flush method";
        out.write(data.getBytes());
        out.flush();
        out.close();
    }
}

close()

После вызова close() поток больше не используется. Он освобождает системные ресурсы и гарантирует корректное закрытие файлового дескриптора.


Дополнительные методы FileOutputStream

МетодОписание
finalize()Вызывается сборщиком мусора для гарантии вызова close().
getChannel()Возвращает связанный FileChannel для продвинутых файловых операций.
getFD()Получает базовый файловый дескриптор.

Для глубокого изучения обратитесь к официальной документации Java FileOutputStream.

java

  1. Ключевое слово final в Java: переменные, методы и классы
  2. Оператор instanceof в Java: полное руководство с примерами
  3. Наследование в Java: концепции, типы и практические примеры
  4. Статические вложенные классы в Java: использование, отличия и примеры
  5. Анонимные внутренние классы в Java: определение, синтаксис и практические примеры
  6. Паттерн Singleton в Java: как реализовать и безопасно использовать
  7. Рефлексия в Java: инспекция классов, методов и полей во время выполнения
  8. Освоение Java ObjectOutputStream: сериализация, методы и практические примеры
  9. Освоение Java Generics: создание переиспользуемого, типобезопасного кода
  10. Мастерство файловых операций в Java с java.io: создание, чтение, запись и удаление