FileReader/FileWriterでテキストファイルの読み書き

2013/11/29 00:32更新
TAGS: Java | FileReader|FileWriter|テキスト|ファイル|読み書き|IO

テキストファイルを読み込み用クラス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

著者について
Syboos.jp編集長AJavaやオープンソース情報の執筆、Webサイトの開発や運営全般の業務に携わる。

Sponsored Link


コメント

記事への評価

USER LOGIN FIRST
メールアドレス:
パスワード:

  • 関連記事