• 締切済み

テキストファイルを読み込んで別のファイルに出力するプログラム

テキストファイルを読み込んで分類し、別のファイルに出力するプログラムを作ろうと思っています。 大まかに作ってみたのですが、そもそもこれであっているのか確認してください。 import java.io.*; public class Test { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader ( new FileReader("kazu.txt")); int note, b1 = 0, b2 = 0, b3 = 0, b4 = 0; String input; while((input = br.readLine()) != null) { note = input.toint(); { //読み込んだString型のデータinputをint型に変換してnoteに代入 /*条件分岐 :noteの値が80以上ならb1に1を加える  条件分岐 :上記以外でnoteの値が70以上ならb2に1を加える  条件分岐 :上記以外でnoteの値が60以上ならb3に1を加える  条件分岐 :上記以外ならb4に1を加える*/ } //bwに文字リテラル"80以上"を書き込む //bwにTAB記号を1文字書き込む //bwにint型の変数b1の値の文字列表現を書き込む //bwに改行記号を書き込む //同様に"70以上80未満" "60以上70未満" "60未満"についてbwに必要な書き込みを行う bw.flush(); br.close(); bw.close(); } } 最近プログラミングを学び始め、急にいろんなことをやり出してしまったので何がなんだかわからなくなっています。 途中にある、String型のデータinputをint型に変換してnoteに代入というのは、どのようにすればいいのでしょうか? またその後にある条件分岐では、if note >=80 b1=b1+1; else if note>=70 ...とやっていけばいいのでしょうか? また、bwへの書き込みというのが(別のプログラムでも)うまくできません。 長々と書いてしまいましたが、よろしくお願いします。

みんなの回答

  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.1

●String型のデータをint型に変換 int n = Integer.parseInt("123"); ●複数の分岐  if( 条件1 ){   処理1  }else if( 条件2 ){   処理2  }else if( 条件3 ){   処理3  }else if( 条件4 ){   処理4  }else{   全てに該当しない場合の処理  } ●テキストファイルの出力 FileOutputStream fos = new FileOutputStream("FILE_NAME.txt"); PrintWriter pw = new PrintWriter(fos); for(int i = 0 ; i < 10 ; i++){  pw.println((i+1) + "行目"); } pw.close();

angelicus
質問者

お礼

ありがとうございました。 色々やってみます。

関連するQ&A