我有一个作业要归因于创建一个程序,该程序可以让用户输入5个字符串,将它们保存到文本文件中,然后输出文本文件的行,但是在输入字符串之后,该程序仅显示“ null”。
import java.io.*;
import java.util.*;
public class WriteLines
{
public static void main(String[] args) throws IOException
{
String k;
String fileName = "Input.txt";
String aLine;
Scanner sc = new Scanner(System.in);
FileWriter fw = new FileWriter("Input.txt");
BufferedWriter bw = new BufferedWriter(fw);
PrintWriter pw = new PrintWriter(bw);
for(int i=0; i<5;i++)
{
System.out.println("Enter a String of text: ");
k=sc.nextLine();
pw.println(k);
}
pw.close();
FileReader fr = new FileReader(fileName);
BufferedReader bl = new BufferedReader(fr);
while((aLine = bl.readLine()) !=null);
{
System.out.println(aLine);
}
bl.close();
}
}
最佳答案
查看您的while
循环,最后您会看到;
,这意味着:
while ((aLine = bl.readLine()) != null) {
;
}
{
System.out.println(aLine);
}
循环一直运行到
aLine == null
,因此循环结束后打印aLine
将打印null
。删除此;
字符将使您的代码正常工作。