首页 > 解决方案 > 转换数组列表带引号从外部 txt 文件读取到 ArrayList没有使用 Java 8 的引号

问题描述

我正在尝试从文本文件中读取引号中的大量单词,例如“DSRD”、“KJHT”、“BFXXX”、“OUYTP”,这样我就可以得到类似 [DSRD, KJHT, BFXXX, OUYTP] 的内容。

我在下面尝试了这两个代码,但仍然返回带引号的行:

   1. List<String> lines = Files.readAllLines(Paths.get(filePath), ENCODING);
   2. List<String> lines = new ArrayList<>(Files.readAllLines(Paths.get(filePath)));

有没有一种方法可以让这个只返回字符串列表而没有每个字符串中的引号?

任何帮助将不胜感激。

谢谢

标签: java

解决方案


您可以拆分单词,因为它们用逗号分隔并对它们应用转换,最后将它们重新加入:

for(int i = 0; i < lines.size(); i++) {
    String line = lines[i];
    String[] words = line.split(",");

    for (int j = 0; j < words.length; j++) {
        words[j] = words[j].replaceAll("^\"|\"$", "");
    }
    
    lines[i] = String.join(",", words);
}

推荐阅读