next up previous
Next: 3.8 対話プログラムの例 Up: 3 ファイルの取り扱い Previous: 3.6 Java アーカイブ

3.7 文字列トークンを処理する例

StringTokenizerというクラスを用いて 文字列から文字列を切り出してくる処理 を行う例を示す.
package basic;
import java.io.*;
import java.util.*;

public class TextFileRW {
  BufferedReader br;
  PrintWriter pw;
  final double discount = 0.8;

  TextFileRW(String inFile,
             String outFile) {
    try {
      br = 
        new BufferedReader(new
          FileReader(inFile));
      pw = new PrintWriter(
        new BufferedWriter(new
          FileWriter(outFile)));
      String line;

      while ((line = br.readLine())
             != null) {
        StringTokenizer st =
          new StringTokenizer(line);
        while (st.hasMoreTokens()) {
          String fruit =
            st.nextToken();
          int price =
            Integer.parseInt(st.nextToken());
          // price = price * discount;
          price *= discount; 
          pw.println(fruit +
                     " (割引き値) " + price);
        }
      }
      br.close();  pw.close();
    } catch (Exception e) {
      System.err.println(e);
    }
  }

  public static void main (String[] args) {
    new TextFileRW(args[0], args[1]);
  }
}


generated through LaTeX2HTML. M.Inaba 平成18年5月7日