English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 흐름 제어

Java 배열

Java 접근 방식 객체(I)

Java 접근 방식 객체(II)

Java 접근 방식 객체(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력 출력(I/)

Java Reader/Writer

Java 다른 주제

Java FileWriter 클래스

이 튜토리얼에서 우리는 예제를 통해 Java FileWriter 및 그 메서드를 배웁니다.

java.io 패키지의 FileWriter 클래스는 데이터(문자 단위로)를 파일에 쓰기 위해 사용될 수 있습니다.

그것은 OutputStreamWriter 클래스를 상속합니다.

FileWriter에 대해 더 알아보기 전에, 다음을 확인해 주세요Java 파일.

FileWriter 생성

파일 작성자를 생성하기 위해 먼저 Java.io.FileWriter 패키지를 가져오는 것이 필요합니다. 패키지를 가져온 후, 파일 작성자를 생성할 수 있습니다.

1. 파일 이름을 사용하여

FileWriter output = new FileWriter(String name);

여기서 우리는 지정된 파일 이름에 연결된 파일 작성자를 생성합니다.

2. 파일 객체를 사용하여

FileWriter input = new FileWriter(File fileObj);

여기서 우리는 파일 객체가 지정한 파일에 연결된 파일 작성자를 생성합니다.

위의 예제에서 데이터는 특정 기본 문자编码으로 저장되었습니다.

하지만, Java 11그리고, 문자编码의 유형을 지정할 수도 있습니다. (UTF8또는UTF16)

FileWriter input = new FileWriter(String file, Charset cs);

여기서 우리는 Charset 클래스를 사용하여 파일 작성자의 문자编码을 지정합니다.

FileWriter의 메서드

FileWriter 클래스는 Writer 클래스에 나타나는 다양한 메서드에 대한 구현을 제공합니다.

write() 메서드

  • write() -쓰기기에 문자를 입력

  • write(char[] array) -지정된 배열의 문자를 쓰기기에 입력

  • write(String data) -지정된 문자열을 쓰기기에 입력

예제: FileWriter로 데이터를 파일에 입력

import java.io.FileWriter;
public class Main {
  public static void main(String args[]) {
    String data = "This is the data in the output file";
    try {
      // FileWriter를 생성
      FileWriter output = new FileWriter("output.txt");
      // 문자열을 파일에 입력
      output.write(data);
      //writer를 닫습니다
      output.close();
    e.getStackTrace();
    catch(Exception e) {
      catch(Exception e) {
    e.getStackTrace();
  e.getStackTrace();
e.getStackTrace();

위의 예제에서는 output이라는 이름의 파일 쓰기기를 생성했습니다. 출력 읽기기는output.txt파일 링크.

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

데이터를 파일에 입력하려면 write() 메서드를 사용합니다.

프로그램을 실행할 때,output.txt파일은 다음 내용으로 채워질 것입니다.

This is a line of text inside the file.

getEncoding() 메서드

getEncoding() 메서드는 데이터 입력에 사용할 인코딩 유형을 얻을 수 있습니다. 예를 들어,

import java.io.FileWriter;
import java.nio.charset.Charset;
class Main {
  public static void main(String[] args) {
    String file = "output.txt";
    try {
      //기본 인코딩으로 FileReader를 생성
      FileWriter output1 = new FileWriter(file);
      //지정된 인코딩으로 FileReader를 생성
      FileWriter output2 = new FileWriter(file, Charset.forName("UTF8");
      //읽기기의 문자编码을 반환
      System.out.println("output1의 문자编码: " + output1.getEncoding());
      System.out.println("output2의 문자编码: " + output2.getEncoding());
      // 关闭 reader
      output1关闭 reader
      output2关闭 reader
    e.getStackTrace();
    .close();
      catch(Exception e) {
    e.getStackTrace();
  e.getStackTrace();
e.getStackTrace();

}

output1출력 결과1252
output2의 문자 encoding을 설정했습니다: Cp8

위의 예제에서는 다음과 같은 문자 encoding을 설정했습니다: UTF2개의 파일 작성자를 생성했습니다. 각각의 이름은 output1와 output2.

  • output1문자 encoding을 지정하지 않았습니다. 따라서 getEncoding() 메서드는 기본 문자 encoding을 반환합니다.

  • output2지정된 문자 encodingUTF8. 따라서 getEncoding() 메서드는 지정된 문자编码을 반환합니다.

주의: Charset.forName() 메서드를 사용하여 문자编码 유형을 지정했습니다.

close() 메서드

파일 작성자를 닫으려면 close() 메서드를 사용할 수 있습니다. close() 메서드를 호출하면, 더 이상 writer를 통해 데이터를 쓰지 못합니다.

FileWriter의 다른 메서드

메서드설명
flush()작성자에 존재하는 모든 데이터를 강제로 해당 목적지에 쓰습니다
append()지정된 문자를 현재 작성자에 삽입합니다