日期:2014-05-17 浏览次数:21221 次
Preferences prefs = Preferences.userNodeForPackage(Launcher.class);
if (args.length > 0)
fileChooser = new JFileChooser(args[0]);
else {
// prefs可以在注册表中缓存上次打开的文件路径,
// 具体参考java.util.prefs.AbstractPreferences的get和put方法
String fileName = prefs.get("recent.file", null);
fileChooser = new JFileChooser();
if (fileName != null) {
fileChooser = new JFileChooser();
fileChooser.setSelectedFile(new File(fileName));
}
}
if (fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
String fileName = fileChooser.getSelectedFile().getPath();
// 将fileName放入了注册表中,
// 我的测试代码在我的机器上产生的注册表信息是这样的:
// HKEY_USERS\S-1-5-21-2927120809-1180443650-1650080734-1000\Software\JavaSoft\Prefs\com\sun\tools\javac
// 名称: recent.file
// 数据: /D:///Workspace///Eclipse//workspace///Compiler_javac//test-files//java-files///For/Launcher_trace.java
prefs.put("recent.file", fileName);
