[英]In Java 8, how do I get my hostname without hard-coding it in my environment?
[英]How to save something to the desktop without hard-coding the directory?
我想知道如何让java在没有写入的情况下将名为hello.txt
的文本文件保存到桌面
"C:\\Users\\Austin\\Desktop"
任何帮助都会很棒。 所以喜欢:
FileWriter fileWriter = new FileWriter(fileName.getText(), true);
..而fileName.getText()
就是'你好'。
更新:我认为我将能够使用jfilechooser,所以这会工作吗?
JFileChooser chooser = new JFileChooser();
chooser.setVisible(true);
那会有用吗? 如果是这样,我如何使用那里的选择来保存文件? 我是一个菜鸟.... :(
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);
}
}
我忘了不同的Locales。 非常脆弱的代码 (即使是针对特定操作系统的代码)。 请参阅下面的评论。 OS X / JFileChooser
。
..how
(System.getProperty("user.home"), "Desktop")
工作..
Oracle为这类事情提供了有用的文档。
请参见System.getProperty(String)
和new File(String,String)
。
我将放弃对此的专家(或用户),但我不认为OS X直接在..start屏幕上支持任何应用程序图标或文档图标,默认外观,等等。可能更好地提供结束用户指向user.home
的JFileChooser
并要求他们将文档保存到桌面(或他们想要的任何地方)。
这会指向桌面目录:
javax.swing.filechooser.FileSystemView.getFileSystemView().getHomeDirectory()
User.home工作,但只是硬编码目录应该没问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.