将多个文本文件读入Java的多个哈希表中

问题描述 投票:0回答:1

我有一个包含5个文本文件的文件夹,我需要将这些文本文件中的内容存储到它们自己的5个单独的哈希表中。我有它的工作方式,但非常混乱。

文本文件通过键0和值1并排正确放置

只是想知道这样做的最佳方法,将不胜感激

下面是我的代码,但对于5个不同的文本文件来说就像这样……很大

if (q.equals("ModelEnglish.txt")) {
ArrayList<String> EnglishReadModelFile = readModelFile(q);
ArrayList<String> ReadTri = new ArrayList<>();
ArrayList<Double> Percentage = new ArrayList<>();
for (int i = 0; i < EnglishReadModelFile.size() - 1; i++) {
ReadTri.add(EnglishReadModelFile.get(i).split(" ")[0]);
Percentage.add(Double.parseDouble
(EnglishReadModelFile.get(i).split(" ")[1]));
EnglishHash.put(ReadTri.get(i), Percentage.get(i));
}
java text-files hashtable
1个回答
0
投票

使用流API进行操作:

Map<String, String> map = Stream.of(new File(dir).listFiles()) // stream all files
        .filter(file -> !file.isDirectory()) // filter directories
        .collect(Collectors.toMap(file -> file.getName(), file -> { // key is file name
            try {return String.join("\n", Files.readAllLines(file.toPath())); } // value is contents
            catch (IOException e) { return ""; }
        }));
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.