84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
不同版本的java这个变量的定义不一样。在java7和之前的版本中,jvm环境变量 user.home 在 windows 系统中被定义为 desktop 文件夹的上级目录。而 desktop 的位置则是从注册表的HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Desktop 处读取,其值一般为 %userprofile%\desktop 。因此其上级目录,即 user.home 一般就被映射为 %userprofile% ,即 c:\documents and settings\yourusername 或 c:\users\yourusername 。这在win7里容易出现被解析成 %userprofile% 字符串而不会进一步解析成目录路径的bug:http://bugs.java.com/view_bug.do?bug_id=4787931 。因此java8中对该问题进行了修复,直接将 user.home 映射系统 %userprofile% 变量,一般是用户主目录,即 c:\users\yourusername 。综上所述,直接把这个变量当成是系统的环境变量 userprofile 就好啦:Environment.GetEnvironmentVariable("userprofile");或者Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
不同版本的java这个变量的定义不一样。
在java7和之前的版本中,jvm环境变量 user.home 在 windows 系统中被定义为 desktop 文件夹的上级目录。而 desktop 的位置则是从注册表的HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Desktop 处读取,其值一般为 %userprofile%\desktop 。因此其上级目录,即 user.home 一般就被映射为 %userprofile% ,即 c:\documents and settings\yourusername 或 c:\users\yourusername 。这在win7里容易出现被解析成 %userprofile% 字符串而不会进一步解析成目录路径的bug:http://bugs.java.com/view_bug.do?bug_id=4787931 。
因此java8中对该问题进行了修复,直接将 user.home 映射系统 %userprofile% 变量,一般是用户主目录,即 c:\users\yourusername 。
综上所述,直接把这个变量当成是系统的环境变量 userprofile 就好啦:
Environment.GetEnvironmentVariable("userprofile");
或者
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);