【发布时间】:2020-12-28 09:24:18
【问题描述】:
我正在尝试解析这样设置的 txt 文件
HBR - [false, true, false, true]
CKR - [false, false, false, true]
GFT - [true, true, false, true]
我想遍历每一行并返回一个布尔值 true 或 false。 这个布尔值是 3 个字母标识符是否存在于所述 txt 文件中。 这就是我到目前为止所得到的,我已经迷路了好几天了
public boolean bDoesLineExist() throws IOException {
String file = "C:\\Parse\\alarmmasksettings.txt";
FileInputStream fileInputStream = new FileInputStream(file);
BufferedReader reader = new BufferedReader(new InputStreamReader(fileInputStream, "UTF-8"));
try {
while (true) {
String line = reader.readLine();
if (line == null) {
break;
}
String[] fields = line.split("-");
if (fields[0].equals("HBR")) {
return true
} else {
return false;
}
}
} finally {
reader.close();
}
}
【问题讨论】:
-
尝试调试并检查
fields元素 - 拆分可能会留下尾随空格,因此比较失败。 -
不是这样,它还在要求退货
-
仍然要求退货是什么意思?
标签: java arrays string parsing