有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Java中将文本文件读入HashMap

我有一个以下格式的文本文件:

Student1 Marks
Student2 Marks

第一列是键

这就是我迄今为止所尝试的

Scanner scanner = new Scanner(new FileReader("marks.txt"));

    HashMap<String,Integer> map = new HashMap<String,Integer>();

    while (scanner.hasNextLine()) {
        String[] columns = scanner.nextLine().split("\t");

        map.put(columns[0],columns[1]);
    }

    System.out.println(map);        


}

共 (2) 个答案

  1. # 1 楼答案

    只要确保您解析了标记,并且这些值确实是用制表符分隔的,否则代码马上就可以为我工作了

        Scanner scanner = new Scanner(new FileReader("marks.txt"));
    
        HashMap<String,Integer> map = new HashMap<String,Integer>();
    
        while (scanner.hasNextLine()) {
            String[] columns = scanner.nextLine().split("\t");
    
            map.put(columns[0],Integer.parseInt(columns[1]));
        }
    
        System.out.println(map);        
    
  2. # 2 楼答案

    (在注释的帮助下)您的代码应该已经读入了HashMap,所以我假设您的问题是在读入后打印HashMap

    System.out.println(map)仅提供贴图对象的表示形式。 我建议阅读以下内容: Convert HashMap.toString() back to HashMap in Java

    要打印HasMap的所有元素,可以对其进行迭代,如下所示:Iterate through a HashMap