我需要在java中添加一个用户配置文件变量,显然%userprofile%不起作用。当我尝试将此变量输入到代码底部的目录中时,它不接受它。但是,我可以在命令行中回显我的%userprofil%用户配置文件+"\下载\文件. txt”);
cxfofazt1#
String System.getenv(String var)
所以
String userprofile = System.getenv("USERPROFILE");
然后根据需要进行操作(例如,附加路径的其余部分...)或者,使用Map<String,String> System.getenv()获取整个环境
Map<String,String> System.getenv()
kqqjbcuj2#
您可能希望获取当前用户的主目录。在Java中,您通常通过调用System.getProperty("user.home")来执行此操作。但在Windows中,这可能会分配给%USERPROFILE%,这会使事情变得有点复杂。请参阅this bug。作为一种解决方法,您可能需要执行John3136建议的操作:System.getenv("USERPROFILE"),但它不能移植到其他环境。
System.getProperty("user.home")
System.getenv("USERPROFILE")
2条答案
按热度按时间cxfofazt1#
所以
然后根据需要进行操作(例如,附加路径的其余部分...)
或者,使用
Map<String,String> System.getenv()
获取整个环境kqqjbcuj2#
您可能希望获取当前用户的主目录。在Java中,您通常通过调用
System.getProperty("user.home")
来执行此操作。但在Windows中,这可能会分配给%USERPROFILE%,这会使事情变得有点复杂。请参阅this bug。作为一种解决方法,您可能需要执行John3136建议的操作:System.getenv("USERPROFILE")
,但它不能移植到其他环境。