天天看点

JAVA读注册表获取My Document等目录

  别的方法太复杂,还是这个简单易懂:

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;
    }