有 Java 编程相关的问题?

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

java如何从文本文档创建HashMap并显示特定的键和值

我正在尝试创建一个简单的方法,该方法将读取一个文本文件,其中有几行由逗号分隔的文本,并将第一个逗号后的文本拆分为一个键,然后每隔一个逗号拆分一行,直到将新行拆分为该键的值

步骤:

  1. ourFilePath读取文件
  2. 将每行(DataEntry1)中的第一个单词拆分为一个键,然后将第一个逗号后面的所有内容拆分为该键的值
  3. 在搜索我要查找的密钥后,打印出该密钥的值

例如:

文件测试。txt:

DataEntry1, Important, Stuff, Data, Clouds
DataEntry2, Boring, Stuff, Numbers, Cats
DataEntry3, Strange, Stuff, MoreData, Dogs

代码:

public static void getOurData(String ourFilePath, String ourDataName) throws Exception {
    Map<String, String> ourMap = new HashMap<String, String>();
    BufferedReader in = new BufferedReader(new FileReader(ourFilePath));
    String line = "";

    while ((line = in.readLine()) != null) {
        String parts[] = line.split(",", 2);

        ourMap.put(parts[1], parts[0]);
        System.out.println(ourMap.toString());
    }

    in.close();

到目前为止,我只能从一个文件中读取数据,我正在试图找出如何将每个DataEntry转换为HashMap ourMap的键,以及之后的所有内容转换为它的值

在确定之后,我可以完成步骤3,在地图上搜索特定的键并打印出该值


共 (1) 个答案

  1. # 1 楼答案

    看起来没问题,你只需要在调用时更改参数的顺序

    ourMap.put(key, value);
    

    试一试

    while ((line = in.readLine()) != null) {
        String parts[] = line.split(",", 2);
    
        ourMap.put(parts[0], parts[1]); // change here
        System.out.println(ourMap.toString());
    }