2012年7月3日火曜日

Java でデータファイルの読み込み

データを読み込むとき、昔なら StringTokenizer を使っていたけど、推奨されてないから、split を使う。

昔バージョン
try {
 BufferedReader br = new BufferedReader(new FileReader("abc.txt"));
 String line;
 while((line=br.readLine) != null){
  StringTokenizer st = new StringTokenizer(line);
  st.nextToken();
  data.add(Double.valueOf(st.nextToken()));
 }
 br.close()
}
catch(IOException ioe){
 ioe.printStackTrace();
}

abc.txt ファイルの中身の2列目を Doubleにしてから data リストに追加している。
例えば、1列目が時間で2列目がデータの時系列を読む場合とか。

で、今では
try {
 BufferedReader br = new BufferedReader(new FileReader("abc.txt"));
 String line;
 while((line=br.readLine) != null){
  String[] elements = line.split("\t");
  data.add(Double.valueOf(elements[1]));
 }
 br.close()
}
catch(IOException ioe){
 ioe.printStackTrace();
}
とすればいい。
たいして変わらないけど。

0 件のコメント:

コメントを投稿