我想知道如何让java将名为hello.txt
的文本文件保存到桌面而不用编写
"C:\\Users\\Austin\\Desktop"
任何帮助都会很棒。所以喜欢:
FileWriter fileWriter = new FileWriter(fileName.getText(), true);
..而fileName.getText()
就是'你好'。
更新: 我认为我可以使用jfilechooser,这样可以吗?
JFileChooser chooser = new JFileChooser();
chooser.setVisible(true);
那会有用吗?如果是这样,我如何使用那里的选择来保存文件?
我是一个菜鸟.... :(
答案 0 :(得分:7)
import java.io.File;
class FindDesktopOnWindows {
public static void main(String[] args) throws Exception {
if (System.getProperty("os.name").toLowerCase().indexOf("win")<0) {
System.err.println("Sorry, Windows only!");
System.exit(1);
}
File desktopDir = new File(System.getProperty("user.home"), "Desktop");
System.out.println(desktopDir.getPath() + " " + desktopDir.exists());
java.awt.Desktop.getDesktop().open(desktopDir);
}
}
我忘记了不同的语言环境。 非常脆弱的代码(即使是针对特定操作系统的代码)。请参阅下面的评论。 OS X / JFileChooser
。
..
(System.getProperty("user.home"), "Desktop")
如何运作..
Oracle为这类事情提供了有用的文档。
见System.getProperty(String)
&amp;
new File(String,String)
我会向专家(或用户)放弃,但我不认为OS X直接在..start屏幕上支持任何应用程序图标或文档图标,默认外观,等等。可能更好为最终用户提供JFileChooser
指向user.home
并要求他们将文档保存到桌面(或他们想要的任何地方)。
答案 1 :(得分:3)
这会指向桌面目录:
javax.swing.filechooser.FileSystemView.getFileSystemView().getHomeDirectory()
答案 2 :(得分:0)
User.home有效,但只需对目录进行硬编码即可。