산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

Java FileOutputStream 클래스 종합 가이드

Java FileOutputStream 클래스

이 튜토리얼은 Java FileOutputStream 클래스의 생성자, 핵심 메서드, 실전 예제를 다룹니다.

java.io 패키지의 FileOutputStream 클래스는 파일에 원시 바이트 데이터를 쓸 수 있게 합니다. 추상 OutputStream 클래스를 확장하며 이진 파일 연산에 필수적입니다.


FileOutputStream 생성하기

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. Java final 키워드 마스터: 변수, 메서드, 클래스에서의 활용
  2. Java instanceof 연산자 완벽 가이드: 기본 사용법부터 상속, 인터페이스까지
  3. Java 상속 마스터: 개념, 종류, 실전 예제 총정리
  4. Java 정적 중첩 클래스 이해: 용법, 내부 클래스와의 차이, 예제
  5. Java 익명 내부 클래스 마스터: 정의, 문법, 실전 예제
  6. Java 싱글톤 패턴 완벽 가이드: 안전하게 구현하고 사용하기
  7. Java 리플렉션 마스터: 런타임에 클래스, 메서드, 필드 검사 및 조작
  8. Java ObjectOutputStream 마스터하기: 직렬화, 메서드, 실전 예제
  9. Java 제네릭 마스터하기: 재사용 가능하고 타입 안전한 코드 작성
  10. java.io로 Java 파일 작업 마스터하기 – 생성, 읽기, 쓰기 및 삭제