我正在尝试从资源文件夹中读取一个简单的文件,该文件每行/定界符填充一个单词(总共144个单词),并且需要大约1m 8s的时间才能将其解析为Arraylist。
我尝试过的代码:
public List<String> loadCoinsWithin() {
ClassLoader classLoader = getClass().getClassLoader();
BufferedReader bReader = new BufferedReader(new InputStreamReader(this.getClass().getResourceAsStream("/coins.txt")));
String line;
List<String> tempList = new ArrayList<String>();
try {
while ((line = bReader.readLine()) != null) {
tempList.add(line);
}
return tempList;
} catch (IOException e) {
e.printStackTrace();
return null;
}
还有
try (Scanner scan = new Scanner(new File(classLoader.getResource("coins.txt").toURI()))) {
scan.useDelimiter(",");
List<String> tempList = new ArrayList<String>();
while (scan.hasNext()) {
//String tempCoin = scan.nextLine();
//scan.skip(scan.delimiter());
tempList.add(scan.next());
}
return tempList;
} catch (Exception e) {
e.printStackTrace();
return null;
}
我首先尝试使用Scanner和BufferedReader,解析每行一个单词,并使用定界符解析单行,我得到的最佳结果是1m 4s。
我不知道接下来要尝试什么,任何人都可以帮助我找到解决方案以及为什么会发生这种情况?
谢谢!