美人すぎない化粧品販売員がアプリ開発を目指す

Javaの構文、オブジェクト指向、APIなど、プログラミング初心者の私がアプリ開発までに理解したことをまとめたブログ

ファイルの読み書き FileReader/FileWriter

☆プログラムからコンピュータの中にあるファイルを読み書きする場合

  一度に一気に読み込んでいるわけではなく、ファイルを少しずつ読み込んでいる

 (一度に読み込むとメモリが足りなくなるから)

 

 コンピュータからプログラムへ読み込んでいる最中に文字が通っている道

                      …"ストリーム"

 

 

・ ファイルから文字を読み込む場合(1文字ずつファイルを読み込む)

    →"java.io.FileReader"というAPIを利用する

 

       ex. import  java.io*;

      public class Main{

                             public static void main(String[ ] args){

                                       String filename="c:¥text.txt"; //ファイル名をセット

           FileReader fr=new FileReader(filename);  //ファイルを開く

             char c1=(char)fr.read( );     //最初の1文字を読み込む

             char c2=(char)fr.read( );     //次の1文字を読み込む

             finally fr.close( );                //ファイルを閉じる

             }

                        }

 

   

FileReaderとは、「指定されたファイルが源流にある小川」のようなもの

 read( );メソッドを呼ぶ度に1文字ずつ文字を取り出せる

 

 read( );の結果が-1の場合、

 ファイルを最後まで読み終わったことを意味する

 

 読み終わったら、ファイルが開けっ放しにならないように必ずファイルを閉じる

  (どんな時でも処理が実行されるfinallyを最初につけること)

 

 

 

 

・ ファイルへ文字や文字列を書き込む場合

    →"java.io.FileWriter"というAPIを利用する

 

 ex. import  java.io*:

                    public class Main{

                               public static void main(String[ ]args){

                                       String filename="c:¥¥text.txt"; //ファイル名をセット

                                       FileWriter fw=new FileWriter(filename);  //ファイルを開く

             fw.write('そ');     //最初の1文字を書き込む

                                         fw.write('れ'); //最初の2文字

             finally fw.close( );   //ファイルを閉じる

            }

                         }

 

 

FileWriterとは、「指定されたファイルが下流に繋がっている小川」のようなもの

  スロリームに流した文字がファイルに書き込まれている

   ※「Bufferred Writer」クラスを使用することも多い