别的方法太复杂,还是这个简单易懂:
private final static String DIR_MY_PICTURES = "My Pictures"; private final static String DIR_MY_MUSIC = "My Music"; private final static String DIR_MY_VIDEO = "My Video"; private final static String REG_ITEM_FORDERS_MY_DOCUMENTS = "personal"; private final static String REG_ITEM_FORDERS_MY_PICTURES = "\"" + DIR_MY_PICTURES +"\""; private final static String REG_ITEM_FORDERS_MY_MUSIC = "\"" + DIR_MY_MUSIC +"\""; private final static String REG_ITEM_FORDERS_MY_VIDEO = "\"" + DIR_MY_VIDEO +"\""; private final static String REG_KEY_FORDERS = "\"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders\""; private static String readRegKeyWindows(final String item) { try { Process p = Runtime.getRuntime().exec("reg query "+REG_KEY_FORDERS+" /v "+item); p.waitFor(); InputStream in = p.getInputStream(); byte[] b = new byte[in.available()]; in.read(b); in.close(); String result = new String(b); return result.split("\\s\\s+")[4]; } catch (Exception e) { //e.printStackTrace(); } return null; }