Javaでのファイルの入出力方法はどうやって使いますか?

Javaでファイルの読み書きを行う際には、主に以下のクラスやインターフェースを使用します。

  1. FileInputStreamとFileOutputStream:バイトストリームを読み書きするためのファイルで、バイト単位で読み書きします。
  2. FileReaderとFileWriter:ファイルの文字ストリームを読み書きするために使われ、文字単位で読み書きを行います。
  3. BufferedReaderとBufferedWriterは、読み書きの効率を向上させるために、バッファリング機能を提供するために使用されます。
  4. InputStreamReaderとOutputStreamWriter:バイトストリームを文字ストリームに変換して、文字ストリームの読み書きを行うために使用されます。

以下是一些常见的文件读写示例代码:

  1. FileInputStreamとFileOutputStreamを使ってバイトストリームのファイルを読み書きする:
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            FileInputStream fis = new FileInputStream("input.txt");
            FileOutputStream fos = new FileOutputStream("output.txt");

            int data;
            while ((data = fis.read()) != -1) {
                fos.write(data);
            }

            fis.close();
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. FileReaderとFileWriterを使用して文字ストリームのファイルを読み書きする:
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            FileReader fr = new FileReader("input.txt");
            FileWriter fw = new FileWriter("output.txt");

            int data;
            while ((data = fr.read()) != -1) {
                fw.write(data);
            }

            fr.close();
            fw.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. ファイルを読み書きする際には、BufferedReaderとBufferedWriterを使用します。
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new FileReader("input.txt"));
            BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));

            String line;
            while ((line = br.readLine()) != null) {
                bw.write(line);
                bw.newLine(); // 写入换行符
            }

            br.close();
            bw.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

これらのサンプルコードはファイルの基本的な読み書き操作に過ぎず、具体的な使用時には例外処理やストリームのクローズなども必要になる場合があります。

bannerAds