java - 如何加载文件以供多种方法访问?
问题描述
我想在界面中加载和读取文本文件。我可以在列表中的一种方法中加载它:
static List readFile(String fileName) throws IOException {
List result;
try (Stream<String> lines = Files.lines(Paths.get(fileName))) {
result = (List) lines.collect(Collectors.toList());
}
return result;
}
但是我想在我的界面中的其他方法中使用这个结果(列表),比如nextItem()
and boolean hasMoreItems()
。如何加载我的文件以便其他方法可以看到它?
解决方案
通过直接在 ArrayList 中调用 read 方法来解决这个问题:
public final ArrayList<String> file = readLines(); // Stores read config file
ListIterator<String> list = file.listIterator(); // Iterates through stored config file
public ArrayList<String> readLines() { // Reads config file
try {
ArrayList<String> lines = new ArrayList<>(
Files.readAllLines(Paths.get("configFile.txt")));
return lines;
} catch (IOException e) {
// handle exception
}
return null;
}
现在这个类中的其他方法可以访问这个 ArrayList!
推荐阅读
- jquery - 如何将“清除”作为选项添加到范围菜单?
- c++ - 非法,左操作数的类型为“DWORD [29]”
- jenkins - jenkins - 如何停用区分大小写以获取匹配项
- javascript - 如何使用 should.js 作为全局变量:
- dart - 将 Widget 定位在 Row 小部件的末尾
- office365 - 如何使用 MS Graph 在 Outlook 中读取“UserProperty”值
- docker - 在 nginx 配置文件上实现 https
- c++ - 我应该如何使用 C++ 中的 Structs 解决输入失败的问题?
- angular5 - 角度 5,使用 (ngModelChange) 更改模型时未采用新模型值
- static - SystemVerilog:自动变量不能为静态 reg 出现非阻塞赋值