読者です 読者をやめる 読者になる 読者になる

うめすこんぶ

日々のプログラミングで残しておきたいメモ.何かの役に立てれば幸いです.

javaでファイル操作するクラス作った~読み込みと書き込みを手っ取り早く…

スポンサーリンク

javaでファイルを読み書きするためのクラスを作成してみました. 読むのはBufferdReader,書くのはPrintWriterを使っています. ファイルの存在可否とか考慮してないこともいろいろですが,とりあえず使えればいい人向け.

ソース

package swingTest;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class FileHandler {
    /**
    * 指定した名前のファイルを読み込む
    * @param path ファイルのパス 
    * @return ファイルの中身をString型にしたもの 
    */
    public static String read(String path) {
        BufferedReader br; // リーダ
        String text = ""; //ファイルの中身を入れる変数
        
        try {
            br = new BufferedReader(new FileReader(path)); // リーダを初期化
            String buf;
            while ((buf = br.readLine()) != null) {
                text += buf; // テキストに文字列を一行ごとに追加
                text += "\n";
            }
            br.close(); // リーダを閉じる
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return text;
    }
    
    /**
    * 指定した名前のファイルに書き込む
    * @param path ファイルのパス
    * @param text 書き込むテキスト
    */
    public static void write(String path, String text) {
        try{
            File file = new File(path);
            PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(file)));
            pw.println(text); // 書き込み処理
            pw.close(); // ライタを閉じる
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}