FileWriter — 문자 파일에 텍스트 쓰기

FileWriter — 문자 파일에 텍스트 쓰기

FileWriter는 기본 버퍼 크기를 사용해 문자 파일에 텍스트를 쓰는 클래스예요. 문자에서 바이트로 인코딩할 때 지정한 문자셋 또는 기본 문자셋을 사용해요. 파일을 사용할 수 있거나 만들 수 있는지는 기반 플랫폼에 따라 달라지며, 일부 플랫폼에서는 파일을 한 번에 하나의 FileWriter만 쓰기용으로 열 수 있게 해요. FileWriter는 문자 스트림을 쓰기 위한 것이에요. 원시 바이트 스트림을 쓰려면 FileOutputStream을 고려하세요.

출처: Java API Reference

본문

이 클래스는 java.io.Writerjava.io.OutputStreamWriter를 상속하며 Closeable, Flushable, Appendable, AutoCloseable을 구현합니다. 파일에 문자를 쓸 때 인코딩(문자셋)을 지정해 올바르게 인코딩하도록 해 주며, append 인자로 기존 파일 끝에 덧붙여 쓸 수도 있어요.

생성자

  • FileWriter(String fileName) — 파일 이름을 주어 기본 문자셋으로 만들어요.
  • FileWriter(String fileName, boolean append) — 파일 이름과 덧붙이기 여부를 주어 기본 문자셋으로 만들어요. appendtrue면 파일 끝에 덧붙여요.
  • FileWriter(String fileName, Charset charset) — 파일 이름과 문자셋을 주어 만들어요.
  • FileWriter(String fileName, Charset charset, boolean append) — 파일 이름, 문자셋, 덧붙이기 여부를 주어 만들어요.
  • FileWriter(File file) — 쓸 File을 주어 기본 문자셋으로 만들어요.
  • FileWriter(File file, boolean append)File과 덧붙이기 여부를 주어 만들어요.
  • FileWriter(File file, Charset charset)File과 문자셋을 주어 만들어요.
  • FileWriter(File file, Charset charset, boolean append)File, 문자셋, 덧붙이기 여부를 주어 만들어요.
  • FileWriter(FileDescriptor fd) — 파일 설명자를 주어 기본 문자셋으로 만들어요.

파일이 디렉터리이거나, 존재하지 않아 만들 수 없거나, 다른 이유로 열 수 없으면 IOException을 던져요.

메서드

write, flush, close, getEncoding 메서드는 OutputStreamWriter에서 상속받고, append 계열은 Writer에서 상속받아 사용할 수 있어요.

FileWriter는 텍스트 파일에 내용을 쓸 때 가장 간단한 방법이며, 버퍼링이 필요하면 BufferedWriter로 감싸 사용해요.

더 알아보기 (Learn more)