这个问题与我之前问过的关于同一程序的问题相关,可以在这里查看:
Writing to a file code causing an endless loop
我已经解决了上面的问题,并将函数重写为while循环,而不是while,但是现在我遇到了相反的问题,就是什么也没有写到文件中。我插入了一条打印语句来告诉我hasnextLine的状态,即使输入了空行,也就是我希望编写者终止时,它始终返回true。
这是更新的代码:
import java.util.Scanner;
import java.io.FileNotFoundException;
import java.io.PrintWriter;;
public class Lab_Week8_WriteAStory {
public static void main(String[] args) throws FileNotFoundException {
Scanner whatToWrite = new Scanner (System.in);
PrintWriter writing = new PrintWriter ("Read and Write Files/output.txt");
while (whatToWrite.hasnextLine()){
String writeToFile = whatToWrite.nextLine();
writing.println(writeToFile);
System.out.println (whatToWrite.hasnextLine());
}
writing.close();
whatToWrite.close();
}
}