java - 如果行之间存在多个间隙,如何从输入文件中读取所有行?

标签 java hashmap

我创建了一个名为 myMap 的 hashmap>,我想将所有唯一的单词存储在 Hashmap 的键中,并将文件名存储在与关键字对应的值中。 从多个文件获取输入并将其名称存储在与关键字对应的值中。

来自 1 个文件的示例输入

AS YOU LIKE IT

by William Shakespeare



DRAMATIS PERSONAE.

DUKE, living in exile
FREDERICK, his brother, and usurper of his dominions
AMIENS, lord attending on the banished Duke
JAQUES,   "      "       "  "     "      "
LE BEAU, a courtier attending upon Frederick
CHARLES, wrestler to Frederick
  OLIVER, son of Sir Rowland de Boys
JAQUES,   "   "  "    "     "  "

代码

String name = f.getName();

    BufferedReader in = new BufferedReader(new FileReader(f));
    String words = in.readLine().trim().toLowerCase();

    for(String word: words.split("\\s+")) {
        if (myMap.get(word) == null) {
            myMap.put(word, new ArrayList<String>());
        }
            myMap.get(word).add(name);
        }

我只能读取所有文件的第一行..

最佳答案

关于java - 如果行之间存在多个间隙,如何从输入文件中读取所有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47772011/

相关文章:

java - Jlabel 和不可编辑的 JTextField 之间的区别

java - 如何更改 JOptionPane.showInputDialog JTextField 中的字体?

java - 如何实现 n :m relation in Java?

c - 我不明白为什么我的 hashTable 不能正常工作 C

java - 为什么Hashtable的load factor和CLRS书中描述的不一致?

java - 为什么在Java 9中不推荐使用finalize()方法?

java - Activity 无法转移到 onclicklistener

java - 使用 SAP JCo 连接到 SAP BAPI 的两个 Web 应用程序

java - HashMap 类中的 final方法

java - 理解 HashMap<K,V>