我正在尝试在我的文本文档的末尾写行,但在hello2.txt
的末尾没有打印任何内容,只有正在打印hello.txt
的代码。此行last line in the text document.
未在hello2.txt
的末尾打印。我该如何解决这个问题?
我感谢任何帮助。
hello.txt的
I am at home
how are you brother?
I am facing problem
hello2.txt 应该是这样的
I am at home
how are you brother?
I am facing problem
last line in the text document.
代码:
public static void main(String[] args) {
File file = new File("D:\\hl_sv\\hello.txt");
try (PrintWriter writer = new PrintWriter("D:\\hl_sv\\hello2.txt");
Scanner scanner = new Scanner(file)) {
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
if (line.isEmpty()) {
System.out.println("last line in the text document");
writer.println("last line in the text document.");
} else {
writer.println(line);
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
答案 0 :(得分:2)
此外,因为您希望将此行追加到文本文件的末尾,请使用:
../
实际上,只需使用writer.append(String)方法就可以在文件末尾添加所需的String。
答案 1 :(得分:2)
在最后一行之后,while (scanner.hasNextLine())
将被评估为false,那些没有再次进入循环,而不是写最后一行。您需要在循环终止后添加该行。