为了账号安全,请及时绑定邮箱和手机立即绑定

将属性加载到 InputStream 中

将属性加载到 InputStream 中

holdtom 2021-08-04 16:53:37
我有一个将 InputStream 作为参数的方法。该方法从 InputStream 中提取属性并返回“版本”属性。此属性保存应用程序的版本。public String getVersion(InputStream inputStream) throws IOException {    Properties properties = new Properties();    properties.load(inputStream);    String version = properties.getProperty("version");    return version;}出于测试目的,我想创建一个 Properties 对象,设置一些属性,然后将这些属性加载到 InputStream 中。最后,InputStream 将传递给被测方法。@Testpublic void testGetAppVersion() {    InputStream inputStream = null;    Properties prop = new Properties();    prop.setProperty("version", "1.0.0.test");    // Load properties into InputStream}我该怎么办?
查看完整描述

1 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

您可以使用该store方法将属性写入流。


下面是一个使用字节数组流的示例:


Properties prop = new Properties();

prop.put("version", "1.0.0.test");


ByteArrayOutputStream os = new ByteArrayOutputStream();

props.store(os, "comments");


InputStream s = new ByteArrayInputStream(os.toByteArray());


String version = getVersion(s);

但我相信以下方式更简单(来自字符串文件内容的输入流):


InputStream is = 

    new ByteArrayInputStream("version=1.0.0.test\n".getBytes());


查看完整回答
反对 回复 2021-08-04
  • 1 回答
  • 0 关注
  • 157 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信