Scanner s = null;
try {
s = new Scanner(new BufferedReader(new FileReader("rates.txt")));
for (int i=0; i<9; i++){
while(s.hasNext()){rates[i] = s.next();}
System.out.println(rates[i]);
}
}catch (IOException e){
System.out.println(e);
}
finally {
if (s != null) {
s.close();
}
}
このコードを実行すると、txt ファイルの最後の文字のチャンクが読み取られ、rates[0] に配置され、1 ~ 9 で null が固定されます。ファイルの最後を最初に読み取る理由がわかりません。txt の内容は以下のとおりです。
USD 1.34
EUR 1.00
JPY 126.28
GBP 0.88
INR 60.20
配列に記録しているのは 60.20 だけです。どんな助けでも大歓迎です。このコードを実行した結果を提供できると思います。
run:
60.20
null
null
null
null
null
null
null
null
BUILD SUCCESSFUL (total time: 0 seconds)