日期:2014-05-17 浏览次数:20929 次
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);