java入門 第17回 入出力処理

第17回のポイント

入出力って?

キーボード入力、ディスプレイ出力、プリンタ出力、ファイル入出力、ネットワーク経由の入出力など
ファイル入出力のポイントは「close」
これを忘れると予期しない不具合が発生する可能性が高くなる。

googleドライブ上にこの講座のプログラムコード、スライドデータを置いています。 https://drive.google.com/folderview?id=0B7jeGhcD18UYM0JtUG8xQm1CeU0&usp=sharing 

以下は実際にビデオの中で作成したプログラムです。

import java.io.*;
public class Study17 {
 public static void main(String[] args) {
  try{
   //キーボード入力用のオブジェクト
   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
   //ファイル出力用のオブジェクト
   PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("Study17.txt")));
   int cnt = 0;//件数カウント
   while(true){//無限ループ
    System.out.println("キーボードから名前を入力して下さい。終了=END");
    String str = br.readLine();//キーボードから入力
    if(str.equals("END")){
     break;
    }else{
     pw.println(str);
     cnt++;//件数をインクリメント
    }
   }
   System.out.println(cnt+"件ファイルに書き出しました。");
   pw.close();//ファイルのクローズ 絶対にクローズすること!
   //ファイル入力用のオブジェクト
   BufferedReader fr = new BufferedReader(new FileReader("Study17.txt"));
   String str= fr.readLine();
   cnt=0;
   while(str !=null){
    System.out.println(str);
    str= fr.readLine();
    cnt++;
   }
   System.out.println(cnt+"件のデータを読み込み、画面に表示しました。");
   fr.close();//ファイルのクローズ 絶対に忘れない!
  }catch(Exception e){
   System.out.println("例外発生");
  }
 }
}