项目中如何获取Java运行环境中的文件内容

业务场景:获取Java运行环境下的hsminfo.properties文件中,获取key为TESTRSAKEY的值

步骤:

1、获取Java运行环境的根目录,一般是jdk包下的jre文件;

2、通过File.separator拼接运行环境的根路径及目标文件的的名称;

3、使用全路径构建输入流,并将其包装在缓冲输入流中(此步可根据实际业务情况调整);

4、使用Properties类的load方法从输入流中加载属性。

static {
		try {
			String javaPath = System.getProperty("java.home");//D:\tool\jdk\jre
			String filePath = javaPath + File.separator + "hsminfo.properties";//D:\tool\jdk\jre\hsminfo.properties
			InputStream in = new BufferedInputStream(new FileInputStream(filePath));
			props.load(in);
			key = props.getProperty("TESTRSAKEY");

		} catch (Exception e) {
			System.out.println("初始化测试环境SM4key失败。");
		}
	}

 File.separator解释及拓展
在 windows 中 文件文件分隔符 用 ' \ ' 或者 ' / ' 都可以
但是在 Linux 中,是不识别 ' \ '  的,而 File.separator 是系统默认的文件分隔符号,在 UNIX 系统上,此字段的值为 ' / '
在 Microsoft Windows 系统上,它为 ' \ ' 屏蔽了这些系统的区别。
所以用 File.separator 保证了在任何系统下不会出错。
此外 File 类还有:
1、separatorChar
          与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符
2、pathSeparatorChar   
          与系统有关的路径分隔符,为了方便,它被表示为一个字符串
3、pathSeparator
          此字符用于分隔以路径列表形式给定的文件序列中的文件名
          在 UNIX 系统上此字段为 ' : '
          在 Microsoft Windows 系统上,它为 ' ; '

props是一个Properties对象,而in是一个输入流。load方法会将输入流中的数据解析为属性键值对,并存储在props对象中。

拓展: hsminfo.properties文件中内容的编写如下,一般采用键值对形式

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值