java .properties与FileInputStream

.properties文件是为了方便我的修改和移植,里面是以键值对的形式存在的(比如说我们可以把连接数据库中的url与username与password放在里面,当项目发布移植的时候我们可以方便修改)

FileInputStream中如果你使用相对路径那就会报错,时候我们可以通过这个文件的上级文件夹目录才可以通过,比如说src/**/***等。

下面是properties文件的操作代码:

    public static String getDatabaseProperties(String key) throws IOException{
        String value = "";
        Properties pt = new Properties();
        InputStream in = new BufferedInputStream(new FileInputStream("src/config/database.properties"));
        pt.load(in);
        value = pt.getProperty(key);
        return value;
    }

转载于:https://my.oschina.net/u/2442469/blog/612788

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,我们可以使用java.util.Properties读取.properties文件,并将其转换为Map对象。 首先,我们需要创建一个Properties对象,并通过load()方法加载.properties文件。然后,我们可以通过getProperty(key)方法获取每个键对应的值,并将其存储在Map对象中。 下面是一个示例代码: ```java import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import java.util.Map; import java.util.Properties; public class ReadPropertiesToMapExample { public static void main(String[] args) { // 创建一个Map对象,用于存储.properties文件的键值对 Map<String, String> propertiesMap = new HashMap<>(); // 读取.properties文件并将其转换为Map try (InputStream input = new FileInputStream("example.properties")) { Properties properties = new Properties(); properties.load(input); // 将.properties文件中的键值对存储在Map对象中 for (String key : properties.stringPropertyNames()) { String value = properties.getProperty(key); propertiesMap.put(key, value); } } catch (IOException e) { e.printStackTrace(); } // 输出Map对象的内容 for (Map.Entry<String, String> entry : propertiesMap.entrySet()) { System.out.println(entry.getKey() + "=" + entry.getValue()); } } } ``` 以上代码中,我们通过创建一个Map对象propertiesMap来存储.properties文件的键值对。然后,我们使用Properties类的load()方法来加载.properties文件。接下来,我们使用getProperty(key)方法获取每个键对应的值,并将其存储在propertiesMap中。最后,我们通过遍历Map对象来输出其内容。 需要注意的是,示例代码中的"example.properties"为需要读取的.properties文件路径,请根据实际情况进行替换。 希望以上回答能够解决你的问题,如果还有其他疑问,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值