通过反射机制获取java文件和ResourceBundle获取配置文件时路径需注意
通过反射获取java文件的类路径时不能当作以src为根路径获取,因为它src只是在集成开发环境中存在的包
而java文件在通过编译后生成的.class文件是存储在项目根下的out目录下的,所有编译过后的java文件都是在这里存储的。
所以工具类中的ResourceBundle resource = ResourceBundle.getBundle("路径");中路径的是从当前src为根路径进行读取文件的方法是没法通用于IO流获取文件时路径写法的。
所以当通过IO流编写以src为根路径而写成如:包名/类名.class这种方式来获取文件是错误的,会报出空指针异常
而上述那种方式获取文件仅限于.properties属性配置文件
通过 ResourceBundle.getBundle() 静态方法来获取(ResourceBundle是一个抽象类),这种方式来获取properties属性文件不需要加.properties后缀名,只需要文件名即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了