FileWriter — 문자 파일에 텍스트 쓰기
FileWriter — 문자 파일에 텍스트 쓰기
FileWriter는 기본 버퍼 크기를 사용해 문자 파일에 텍스트를 쓰는 클래스예요. 문자에서 바이트로 인코딩할 때 지정한 문자셋 또는 기본 문자셋을 사용해요. 파일을 사용할 수 있거나 만들 수 있는지는 기반 플랫폼에 따라 달라지며, 일부 플랫폼에서는 파일을 한 번에 하나의 FileWriter만 쓰기용으로 열 수 있게 해요. FileWriter는 문자 스트림을 쓰기 위한 것이에요. 원시 바이트 스트림을 쓰려면 FileOutputStream을 고려하세요.
본문
이 클래스는 java.io.Writer → java.io.OutputStreamWriter를 상속하며 Closeable, Flushable, Appendable, AutoCloseable을 구현합니다. 파일에 문자를 쓸 때 인코딩(문자셋)을 지정해 올바르게 인코딩하도록 해 주며, append 인자로 기존 파일 끝에 덧붙여 쓸 수도 있어요.
생성자
FileWriter(String fileName)— 파일 이름을 주어 기본 문자셋으로 만들어요.FileWriter(String fileName, boolean append)— 파일 이름과 덧붙이기 여부를 주어 기본 문자셋으로 만들어요.append가true면 파일 끝에 덧붙여요.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로 감싸 사용해요.