我有一个文本文件,其数据如下:
Surrender~abc~nov@2012
Surrender~bnc~bhdgvx
Surrender~nkhjb~bcdjh
.
.
.
我想逐行分隔数据,并将 Hashmap 中的第二列和第三列值存储为 2nd -> key 和 3rd -> value,并检查用户输入的值是否存在于 Hashmap 中并返回 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();