次のようなデータを含むテキストファイルがあります。
Surrender~abc~nov@2012
Surrender~bnc~bhdgvx
Surrender~nkhjb~bcdjh
.
.
.
データを行ごとに分離し、2番目と3番目の列の値を2番目->キーと3番目->の値としてハッシュマップに格納し、ユーザーが入力した値がハッシュマップに存在するかどうかを確認してtrueを返します。
フォローしてみましたが、java.lang.ArrayIndexOutOfBoundsException: 3
ガイドしてください。
HashMap hm = new HashMap();
FileInputStream fstream = new FileInputStream("Surrender.txt");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
String[] parts = strLine.split("~");
for (int i = 0; i <= parts.length; i++) {
if(!parts[i].equalsIgnoreCase("Surrender")){
String key=parts[i];
String value=parts[i++];
if(key!=null && value!=null)
hm.put(key,value);
}
}
}
System.out.println("HashMap size..." + hm.size());
in.close();