我正在逐行读取文本文件并将其转换为字符串。
我正在试图弄清楚如何检查文件的最后一行是否是特定的单词("FILTER")
。
我尝试使用String类的endsWith(String)
方法,但它在出现时没有检测到。
答案 0 :(得分:3)
相当天真的解决方案,但这应该有效:
String[] lines = fileContents.split("\n");
String lastLine = lines[lines.length - 1];
if("FILTER".equals(lastLine)){
// Do Stuff
}
不确定为什么.endsWith()不起作用。最后是否有额外的换行符? (在这种情况下,上述情况不起作用)。案件总是匹配吗?
答案 1 :(得分:1)
.trim()
检查之前, endsWith(..)
您的字符串(如果文件真的以所需的字符串结尾。如果没有,您只需使用.contains(..)
)
答案 2 :(得分:0)
用
myString.endsWith("FILTER")
检查最后一行的最后一个字符。也许方法
myString.contains("FILTER")
对你来说是正确的方法吗?如果你只想检查最后的... eg20 chars尝试子串字符串,然后检查equals方法。
答案 3 :(得分:0)
public static boolean compareInFile(String inputWord) {
String word = "";
File file = new File("Deepak.txt");
try {
Scanner input = new Scanner(file);
while (input.hasNext()) {
word = input.next();
if (inputWord.equals(word)) {
return true;
}
}
} catch (Exception error) {
}
return false;
}