尝试使用printWriter将变量的值写入文件

时间:2019-11-12 18:20:47

标签: java file-writing

使用以下代码,文件中不显示任何内容。 例如,如果我将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();
    }

0 个答案:

没有答案