java中获取properties文件的内容

上一篇讲了怎么properties的格式规范,这篇讲解怎么在java中获取properties里面的参数
闲话不多说,直接上例子

  1. 新建一个winvoi.properties文件,里面的内容时:

    age=152
    name=linkaige
    id=125633
    

    相信大家已经能看懂上面的内容了,不懂得请先看我的另外一篇博客 -->怎么编写properties文件

  2. 新建一个java类Test.java(注意把properties文件和java文件放一个包下,本节只讲如何获取properties中的值,尽量不涉及别的知识块) 上代码

    package java8.rambda;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.Properties;
    
    public class Test {
        public static void main(String[] args) throws IOException {
            //使用Class类的getResourceAsStream()方法获取文件 并返回InputStream类的一个对象
            InputStream inputStream = Test.class.getResourceAsStream("winvoi.properties");
            //实例化Properties类
            Properties properties = new Properties();
            //调用load()方法加载properties文件,load里面传入InputSteam类型的参数或者Reader类型的参数
            properties.load(inputStream);
            //通过getProperty(String key)方法获取,传入一个String类型的 键,返回一个String类型的值 如果键不存在则返回null
            String age = properties.getProperty("age");
            String name = properties.getProperty("name");
            //通过getProperty(String key, String defaultValue)方法获取,传入一个String类型的键和一个默认值,返回一个String类型的值 如果键不存在则返回defaultValue
            String id = properties.getProperty("id", "123456");
            System.out.println("age:" + age);
            System.out.println("name:" + name);
            System.out.println("id:" + id);
        }
    }
    
    
  3. 运行结果
    通过properties文件中的键获取到了值;
    在这里插入图片描述
    解释: 里面涉及到了Class类 不懂的可以先不管
    1.要获取文件中的内容,首先得将文件加载到流里面,通过Class类的getResourceAsStream()方法获取文件,这个方法会返回一个InputSteam对象,
    2.然后实例化一个Properties对象,这个类是用来操作properties文件的,可以通过键的方式来获取值,更多使用方法可以查看api
    3.实例化一个Properties对象后还得以流的方式加载properties文件,可以传入一个字节流对象或者字符流对象,这样才能获取到里面的内容,这个方法会抛出一个IO异常
    4.getProperty()方法会返回一个String类型的字符串,如果所查询的键在文件中不存在则会返回null,
    至于为什么上面有两个形参个数不同的getProperty()方法,相信大家都知道,如果不知道还是先去看下java基础。
    本章获取就讲完了,东西没有好多,写的也不是那么的好,就当巩固一下吧,可能大家也注意到了,properties中没写中文,在这篇我就不写中文了,有中文的话可能乱码,还要处理,所以留到下一篇再来解决

写的不好还望大神留言指教!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值