java如何读取.properties文件

本文介绍了Java中Properties类的六种使用方法及其应用场景。Properties类继承自Hashtable,常用于配置文件及属性文件的读取。此外还提供了针对不同环境的读取方式,并对打包成jar后的文件读取进行了特别说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[color=red]Properties类继承了HashTable类
Properties里面存放的键和值都是字符串
Properties经常用在代码里面的一些配置文件,属性文件。
Properties用法和HashMap相类似。

另外System.getProperties()方法会返回系统所有的环境变量,返回的是一个Properties对象,读取里面的内容可以查看。[/color]


优快云上学习总结:首先介绍读取.properties文件的六种方法

1.使用java.util.Properties类里的load()方法
例如:InputStream in = new BufferedInputStream(new FileInputStream(name));
Properties p = new Properties();
p.load(in);

2.使用class变量的getResourceAsStream()方法
例如:InputStream in = JProperties.class.getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

3.使用java.lang.ClassLoader类的getSystemResourceAsStream()方法
例如:InputStream in = ClassLoader.getSystemResourceAsStream(name);
Properties p = new Properties();
p.load(in);

4.使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
例如:InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

5.使用java.util.ResourceBundle类的getBundle()方法
例如:ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault());

6.使用java.util.PropertyResourceBundle类的构造函数
例如:InputStream in = new BufferedInputStream(new FileInputStream(name));
ResourceBundle rb = new PropertyResourceBundle(in);

下面再做一些补充说明:
1.如果用servlet开发还可以使用javax.servlet.ServletContext的getResourceAsStream()方法
例如:InputStream in = context.getResourceAsStream(path);
Properties p = new Properties();
p.load(in);

2.在将工程打成jar包之后里面的读取.properties文件的程序可能出错,具体是由于.properties文件放置以及寻找路径不对造成的。可以按以下规制调用上面的方法:“
properties的读取方法受到文件放置的位置的影响。当properties位于jar包内部时,使用法三和法四,当properties位于jar包外部时,使用法一,同时将java启动脚本放在jar包的同一目录下面或者在同一目录下启动java程序。 ”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值