1、使用getClassLoader,该方式只能读取类路径下的配置文件,有局限但是如果配置文件在类路径下比较方便。
1 2 3 4 5 6 7 | Properties properties = new Properties(); // 使用ClassLoader加载properties配置文件生成对应的输入流,默认路径是src下 InputStream in = PropertiesTest. class .getClassLoader().getResourceAsStream( "com/jay/ct/b.properties" ); // 使用properties对象加载输入流 properties.load( in ); // 获取key对应的value值 String name = properties.getProperty( "name" ); |
2、基于 InputStream 读取配置文件,该方式的优点在于可以读取任意路径下的配置文件
1 2 3 4 5 6 | Properties properties = new Properties(); // 使用InPutStream流读取properties文件 BufferedInputStream b2 = new BufferedInputStream( new FileInputStream( "E:/b.properties" )); properties.load(b2); // 获取key对应的value值 String name = properties.getProperty( "name" ); |
3、通过 java.util.ResourceBundle 类来读取,不需要加.properties后缀名,默认路径是src下
1 2 3 4 5 6 | ResourceBundle resource = ResourceBundle.getBundle( "a" ); String name = resource.getString( "name" ); BufferedInputStream b2 = new BufferedInputStream( new FileInputStream( "E:/b.properties" )); ResourceBundle resource2 = new PropertyResourceBundle(b2); String name2 = resource2.getString( "name" ); |
注意:配置文件在当前类所在的包下,需使用包名限定:com/jay/ct/b.properties;配置文件在src根目录下,直接使用b.properties。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
2017-07-06 MySql中循环的使用
2016-07-06 redis安装