FileReader/FileWriterでテキストファイルの読み書き
2009/01/28 17:57Update
テキストファイルを読み込み用クラスFileReader、および書き込み用クラスFileWriterをサンプルから簡単に紹介します。
FileReaderについて
java.io.FileReaderはファイルからの読み込みのための簡易クラスです。
1)文字ストリームを読み込み用クラスなので、バイトストリームであれば、InputStreamやFileInputStream、InputStreamReaderなどを利用します。
2)読み込むファイルのエンコードを指定することはできません、エンコード方式を指定して読み込みたい場合、InputStreamReaderクラスやFileInputStreamクラスを利用します。
■FileReaderインスタンスの生成
1)ファイルパスから
FileReader fr = new FileReader("c:\test.txt");
2)FileDescriptorオブジェクトから
FileReader fr = new FileReader(FileDescriptor.in); //標準入力
3)Fileオブジェクトから
File file = new File("c:\test.txt");
FileReader fr = new FileReader(file);
FileWriterについて
java.io.FileWriterはテキストファイルを書き込むための簡易クラスです。
1)文字ストリームを出力用クラスなので、バイトストリームであれば、OutputStreamやFileOutputStream、OutputStreamReaderなどを利用します。
2)出力するファイルのエンコードを指定することはできません、エンコード方式を指定して出力したい場合、OutputStreamReaderクラスやFileOutputStreamクラスを利用します。
■FileWriterインスタンスの生成
1)ファイルパスから
FileWriter fw01 = new FileWriter("c:\test.txt"); //新規作成モード。すでに存在した場合、上書きします。
FileWriter fw02 = new FileWriter("c:\test.txt", true); //追加モード。すでに存在した場合、ファイルの後ろに追加し、上書きしません。
2)FileDescriptorオブジェクトから
FileWriter fw = new FileWriter(FileDescriptor.out); //標準出力
3)Fileオブジェクトから
File file = new File("c:\test.txt");
FileWriter fw01 = new FileWriter(file); //新規作成モード。すでに存在した場合、上書きします。
FileWriter fw02 = new FileWriter(file); //追加モード。すでに存在した場合、ファイルの後ろに追加し、上書きしません。
サンプル
c:\\in.txtというテキストファイルから文字列を読み込み、c:\\out.txtに出力を行うサンプルです。
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class TestJavaIO {
//Java IOテスト
public static void main(String[] args) {
try {
//FileReader, ファイル読み込み用クラス。"c:\\in.txt"が存在しなければなりません
FileReader in = new FileReader("c:\\in.txt");
//FileWriter, ファイルに書き込み用クラス。
FileWriter out = new FileWriter("c:\\out.txt");
int ch;
while ((ch = in.read()) != -1) { //ファイルの終わりまで読み込み
//読み込んだCHARをout.txtに保存
out.write(ch);
}
in.close(); //クローズ
out.close( ); //クローズ
//c:\\にout.txtファイルが作成されることを確認できます。
} catch(IOException e) {
}
}
}
参考資料
FileReader Javadoc
FileWriter Javadoc
FileDescriptor Javadoc
Sponsored Link
Comments
- Relative Articles