gpt4 book ai didi

Java 如何从任何用户的桌面读取/写入文件

转载 作者:行者123 更新时间:2023-12-01 22:46:44 26 4
gpt4 key购买 nike

我想从用户桌面读取一个文件,然后将一个新文件写入桌面。下面是在我自己的计算机上执行此操作的代码,但我不确定如何为任何用户执行此操作。

我找到了this以前问过的问题,但我不确定如何在 Java 中实现这样的方法。我可以使用 System.getProperty()方法?

感谢任何帮助或建议。谢谢!

public static String [] read()
{
ArrayList<String> fileArrList = new ArrayList<>();
Scanner scan = new Scanner(System.in);
System.out.print("File name > ");
String fileName = scan.nextLine();

try
{
Scanner file = new Scanner(new File("C:\\Users\\pez\\Desktop\\" + fileName));

while (file.hasNextLine())
{
String line = file.nextLine();
fileArrList.add(line);
}

file.close();

String [] fileArr = new String[fileArrList.size()];
fileArr = fileArrList.toArray(fileArr);

return fileArr;
}
catch (FileNotFoundException fnfe)
{
System.out.println("File not found");
}

return null;
}

public static void writeNewFile(ArrayList outputArr)
{
try
{
FileOutputStream fos = new FileOutputStream("C:\\Users\\pez\\Desktop\\output.txt", false);
PrintWriter pw = new PrintWriter(fos);

for (Object i : outputArr)
{
pw.println(i);
}

pw.close();
}
catch (FileNotFoundException fnfe)
{
}
}

最佳答案

您可以使用系统属性user.home:

    File desktop = new File(System.getProperty("user.home"), "/Desktop"); 
Scanner file = new Scanner(new File(desktop, fileName));

我假设您知道这种方式仅限于 Windows 环境。

关于Java 如何从任何用户的桌面读取/写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25223599/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com