使用以下代码,文件中不显示任何内容。 例如,如果我将UserString更改为“ Hello”,它将起作用并打印到文件中。 我已经在try中检查了UserString的值,它会打印正确的值,但是我不知道为什么printWriter不会使用该值。
public void writeToAFile()
{
FileOutputStream outputStream = null;
PrintWriter printWriter = null;
System.out.println("Please enter the name of the file:");
Scanner UserFileNameInput = new Scanner(System.in);
FileName = UserFileNameInput.nextLine();
if(FileName != "")
{
do {
System.out.println("Please enter a string:");
Scanner UserStringInput = new Scanner(System.in);
UserString = UserStringInput.nextLine();
try
{
outputStream = new FileOutputStream(FileName+".txt");
printWriter = new PrintWriter(outputStream);
printWriter.println(UserString);
}
catch(IOException e)
{
System.out.println("Error in file write: " + e);
}
}while(UserString.length() != 0);
printWriter.close();
System.exit(0);
}
else
{
System.out.println("Please enter a valid input");
writeToAFile();
}
}
public static void main(String[] args)
{
Files writeToAFileObject = new Files();
writeToAFileObject.writeToAFile();
}