指定PrintWriter类(Java)的文件位置并自动追加.txt

指定PrintWriter类(Java)的文件位置并自动追加.txt,java,printwriter,Java,Printwriter,假设我要求用户指定他想要调用的新文件 System.out.println("What do you want to call the file?"); String outputFile = keyboard.nextLine(); 现在要编写该文件,我将执行以下操作: PrintWriter outputFile = new PrintWriter(fileName); 我的问题是: 我知道默认情况下它会保存到本地文件夹。如何使其保存到用户桌面 我如何自动将.txt附加到他给定的文件名

假设我要求用户指定他想要调用的新文件

System.out.println("What do you want to call the file?");

String outputFile = keyboard.nextLine();
现在要编写该文件,我将执行以下操作:

PrintWriter outputFile = new PrintWriter(fileName);
我的问题是:

  • 我知道默认情况下它会保存到本地文件夹。如何使其保存到用户桌面

  • 我如何自动将.txt附加到他给定的文件名中,这样他就不必这样做了

  • 您必须了解用户主页。它可以随操作系统的不同而变化(用户有时可以定义自己的操作系统),因此最好的确定方法是直接询问用户。您还可以保留“默认桌面路径”列表
  • 如果(!fileName.endsWith(“.txt”))fileName=fileName+“.txt”

  • 资源:
  • 您必须了解用户主页。它可以随操作系统的不同而变化(用户有时可以定义自己的操作系统),因此最好的确定方法是直接询问用户。您还可以保留“默认桌面路径”列表
  • 如果(!fileName.endsWith(“.txt”))fileName=fileName+“.txt”

  • 资源:

    如果您要询问用户将文件放在哪里,您可能应该从系统属性“user.home”给出的目录开始,即调用system.getProperty(“user.home”)

    然后,您可以显示目录列表,并要求用户选择一个目录,向下搜索,直到用户找到他想要使用的目录。在Windows计算机上,“桌面”目录实际上直接位于用户的主目录下。

    如果您要询问用户将文件放在哪里,您可能应该从系统属性“user.home”给出的目录开始,即调用system.getProperty(“user.home”)

    然后,您可以显示目录列表,并要求用户选择一个目录,向下搜索,直到用户找到他想要使用的目录。在Windows计算机上,“桌面”目录实际上就在用户的主目录下。

    如果我知道他的桌面的目录是例如c:/Users/user/Desktop-现在我想添加/fileName
    fileName=“c:/Users/user/Desktop”+fileName
    ,现在我看到了,这是显而易见的。你之前关于保留“默认桌面路径”列表的意思是什么?如果我知道他的桌面的目录是例如c:/Users/user/desktop-现在我想添加/fileName
    fileName=“c:/Users/user/desktop”+fileName
    ,这一点很明显。您之前关于保留“默认桌面路径”列表的意思是什么