JAVA系统属性之user home

我们可以通过System.getProperty("user.home")读取JAVA系统的user.home属性的值。

System.getProperty("user.home")方法先去读取注册表中HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell

Folders下的Desktop键值做为user.dir,再取它的上一级目录做为user.home

打开注册表编辑器,定位到上面的键值,你可以发现Desktop的值是%USERPROFILE%\桌面这种形式。

%USERPROFILE%对应C:\Documents and Settings\%用户名%。对于Administrator用户,这里取得的Desktop自然是C:\Documents and Settings\Administrator\桌面.那么user.home就应该是C:\Documents and Settings\Administrator

示例1:

public class PrintHome{

public static void main(String[] args) {

System.out.println(System.getProperty("user.home") );

}

}

有些电脑的注册表中的Desktop可能变为%USERPROFILE%\桌面\这种形式。这时我们得到的user.home可能会变成C:\Documents and Settings\Administrator\桌面,这时需要手动修改Desktop为%USERPROFILE%\桌面这种形式,

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net

原文地址:https://www.cnblogs.com/siwnchh/p/10464310.html

时间: 2024-10-10 04:32:00

JAVA系统属性之user home的相关文章

设置java系统属性的最佳实践是什么,-D或System.setProperty()?(What is best practice for setting java system properties, -D or System.setProperty()?)

I need to set the codebase for the RMI application I'm working on at the moment and have done this successfully using first try{ ResourceBundle config = ResourceBundle.getBundle("myApp"); String codeBaseUrl = config.getString("codeBaseUrl&q

使用java系统属性user.dir读取配置文件

适用于windows和linux服务器读取配置文件 import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Properties; import org.apache.log4j.Logger; public final class PropertyUtil {private static Logger LOG = Logger.getLogger(Propert

java File_encoding属性

今天给客户发版本,突然发现报表导出内容为空,大小0字节.感到非常奇怪,因为开发的时候都好好的,打包出来怎么会出现异常. 细看才后发现是 file_encoding这个java系统属性编码方式设置导致的. 开发的时候一般我们都在eclipse中把项目的 text file  encoding 这个属性设置为utf-8. 如图: 开发完,脱离eclipse之后我们同样需要指定该编码方式去执行java程序, 否则 当你输出System.getProperty("file.encoding")

Confluence 6 识别系统属性

Confluence 支持一些可以从 Java 系统属性中配置的配置参数和调试(debugging )设置.系统属性通常是使用 -D 为参数选项,这个选项是 Confluence 在运行后设置到 JVM 虚拟机中的.请参考:Configuring System Properties 页面中的内容来获得更多的信息. 开始版本 默认值 模块... 作用和影响 atlassian.forceSchemaUpdate 1.0 false atlassian-config 在默认的情况下,Confluen

java中获取系统属性以及环境变量

java中获取系统属性以及环境变量 System.getEnv()和System.getProperties()的差别 从概念上讲,系统属性 和环境变量 都是名称与值之间的映射.两种机制都能用来将用户定义的信息传递给 Java 进程.环境变量产生很多其它的全局效应,由于它们不仅对Java 子进程可见,并且对于定义它们的进程的全部子进程都是可见的.在不同的操作系统上,它们的语义有细微的区别,比方,不区分大写和小写.由于这些原因,环境变量更可能有意料不到的副作用.最好在可能的地方使用系统属性.环境变

java通过System.getProperty获取系统属性

getProperties public static Properties getProperties() 确定当前的系统属性. 首先,如果有安全管理器,则不带参数直接调用其 checkPropertiesAccess 方法.这可能导致一个安全性异常. 将 getProperty(String) 方法使用的当前系统属性集合作为Properties 对象返回.如果没有当前系统属性集合,则先创建并初始化一个系统属性集合.这个系统属性集合总是包含以下键的值: 键 相关值的描述 java.versio

如何使用Java读写系统属性?

如何使用Java读写系统属性? 读: Properties props = System.getProperties(); Enumeration prop_names = props.propertyNames(); while (prop_names.hasMoreElements()) { String prop_name = (String) prop_names.nextElement(); String property = props.getProperty(prop_name);

Java代码查看所有的系统属性

何为系统属性? 系统属性是指与用户程序相关的操作系统配置信息以及软件信息. 用户程序相关的属性例子 file.separator:文件分隔符:Windows环境下为"\",Linux环境下为"/": user.dir:当前用户程序所在目录: path.separator:当前操作系统的路径分隔符: os.version:操作系统版本: user.name:用户登录名称: os.name:操作系统名称: java.ext.dirs:JDK的安装目录: java.hom

Java获取系统属性及环境变量

当程序中需要使用与操作系统相关的变量(例如:文件分隔符.换行符)时,Java提供了System类的静态方法getenv()和getProperty()用于返回系统相关的变量与属性,getenv方法返回的变量大多于系统相关,getProperty方法返回的变量大多与java程序有关. 系统属性和环境变量都是名称与值之间的映射.两种机制都能用来将用户定义的信息传递给 Java进程.环境变量产生更多的全局效应,因为它们不仅对Java子进程可见,而且对于定义它们的进程的所有子进程都是可见的.在不同的操作