如何将windows用户名注入新的java.io.FileInputStream?

如何将windows用户名注入新的java.io.FileInputStream?,java,java-io,Java,Java Io,我想将windows用户名注入URL位置,输入流将其作为字符串。它必须是一个连续的字符串,我不知道如何插入它。正确的方法是什么?这就是它的设置方式 private String currUser = System.getenv("USERNAME"); fis = new FileInputStream("C:\\Users\\currUser\\db_creds.properties"); 我需要字符串中的currUser来识别用户名。使用 澄清后,以下版本也应适用: fis = new F

我想将windows用户名注入URL位置,输入流将其作为字符串。它必须是一个连续的字符串,我不知道如何插入它。正确的方法是什么?这就是它的设置方式

private String currUser = System.getenv("USERNAME");
fis = new FileInputStream("C:\\Users\\currUser\\db_creds.properties");
我需要字符串中的currUser来识别用户名。

使用

澄清后,以下版本也应适用:

fis = new FileInputStream("C:\\Users\\"+currUser+"\\db_creds.properties");
我最喜欢的是以下内容,因为它与操作系统无关:

 fis = new FileInputStream(System.getProperty("user.home")+"/db_creds.properties");
或者从属性文件中读取

我还建议使用/而不是\\

System.getenv也应该工作,这是值得的


如果这不起作用,请编辑您的问题,使其包含错误消息或问题所在的堆栈跟踪。

您是否可以使用包含c:\\users\\then+currUser+\\db\u creds.properties的字符串?尝试了这种方法它不喜欢参数中的+s我不确定为什么我总是这样做。。。没有道理为什么它不起作用。非常感谢。idk为什么我找不到这个简单的替代品。。。我以前从未使用过它。。。始终只需使用,+-+,@JasonD,如果在另一个版本中使用逗号,那么它将无法工作comment@JasonD简单的浓缩也应该有效。但是我假设路径名是一个预定义的模板,这可能就是为什么它不能工作的原因。。。我不知道为什么我坚持用逗号…@VGR这就是我建议的原因
 fis = new FileInputStream(System.getProperty("user.home")+"/db_creds.properties");
private String currUser = System.getProperty("user.name");
fis = new FileInputStream("C:\\Users\\" + currUser + "\\db_creds.properties");