gpt4 book ai didi

java - 文本文件中的 HashMap 未完全读取

转载 作者:行者123 更新时间:2023-12-02 07:57:09 25 4
gpt4 key购买 nike

所以我花了几个小时才想出这个代码

public class instructorIO
{
static Map<String, String> instructors;


public static Map<String, String> getInstructors()
{
try
{
BufferedReader in = new BufferedReader( new FileReader("instructor.txt"));

instructors = new LinkedHashMap<String, String>();

String line;

while(((line = in.readLine()) != null))
{
line = in.readLine();
String[] val = line.split("<>");
String ID = val[0];
String name = val[1];

instructors.put(ID, name);
}
in.close();
}
catch(IOException ioe)
{
ioe.printStackTrace();
}

return instructors;
}
}

当我尝试在文本区域中显示所有 HashMap 值时,仅显示哈希 ID 2,6 和 4。总共有 6 个...我做错了什么?

此外,当我尝试对另一个文本文件执行此操作时,我在线程“main”java.lang.NullPointerException 中收到异常at String[] val = line.split("<>");

最佳答案

您一次读取两行,并且只读取第二行:

        while(((line = in.readLine()) != null))
{
line = in.readLine();
String[] val = line.split("<>");
String ID = val[0];
String name = val[1];

instructors.put(ID, name);
}

一次进入while条件,然后再次进入循环体。我建议你这样做:

        while(((line = in.readLine()) != null))
{
String[] val = line.split("<>");
String ID = val[0];
String name = val[1];

instructors.put(ID, name);
}

关于java - 文本文件中的 HashMap 未完全读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9464028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com