java如何读取resources目录和同级目录文件

 更新时间:2024年12月12日 14:42:25   作者:jzx-sdjz  
介绍了Java中读取resources目录和同级目录文件的方法,并讨论了在IDE和发布环境中可能遇到的问题,通过测试发现,执行目录可能会影响文件读取,建议在使用`user.dir`时注意jar包的运行目录问题

java读取resources目录和同级目录文件

1.读取resource目录下的文件

/**
     * 读取resource中的文件
     */
    private static void readCurrent() {
        try {
            InputStream in = FilePath.class.getResourceAsStream("/a.properties");
            Properties properties = new Properties();
            properties.load(in);

            System.out.println(properties.getProperty("name"));
            System.out.println(properties.getProperty("password"));

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

2.读取jar包同级目录下的文件

public static void readFile() {
        try {
            String path = System.getProperty("user.dir") + "/a.properties";
            File file = new File(path);
            if (file.isFile()) {
                System.out.println("找到文件");
            } else {
                System.out.println("未找到相应文件");
            }
        } catch (Exception e) {

        }
    }

在IDE中运行的没有问题,但是发布之后发现了问题,user.dir和java -jar命令执行程序所在目录有关系

然后写个测试样例测试一下,发现和执行目录有关系,如果想使用user.dir这个方法,就要注意jar运行的目录问题。

public static void main(String[] args) {
        String useDir = System.getProperty("user.dir");
        System.out.println(useDir);

    }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Micronaut框架的简单使用介绍

    Micronaut框架的简单使用介绍

    这篇文章主要介绍了Micronaut框架的简单使用介绍,帮助大家更好的理解和学习使用Micronaut,感兴趣的朋友可以了解下
    2021-04-04
  • Java 同步锁(synchronized)详解及实例

    Java 同步锁(synchronized)详解及实例

    这篇文章主要介绍了Java 同步锁(synchronized)详解及实例的相关资料,需要的朋友可以参考下
    2017-03-03
  • 详解Java爬虫利器Jsoup

    详解Java爬虫利器Jsoup

    Jsoup是一款Java语言开发的HTML解析器,用于解析HTML文档以及对HTML文档进行操作,处理等,本文就将详细给大家介绍一下Java中的爬虫利器Jsoup,感兴趣的同学可以参考一下
    2023-06-06
  • java8 Stream API之reduce使用说明

    java8 Stream API之reduce使用说明

    这篇文章主要介绍了java8 Stream API之reduce使用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • java日期操作工具类(获取指定日期、日期转换、相隔天数)

    java日期操作工具类(获取指定日期、日期转换、相隔天数)

    这篇文章主要为大家详细介绍了java日期操作工具类,包括获取指定日期、日期转换、相隔天数等操作,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Java之@TableField注解的用法解析

    Java之@TableField注解的用法解析

    MyBatis-Plus的@TableField注解用于控制实体类字段与数据库表字段的映射关系,支持字段映射、忽略、插入和更新控制、自定义填充策略和类型转换等
    2025-01-01
  • Java基本知识点之变量和数据类型

    Java基本知识点之变量和数据类型

    这篇文章主要给大家介绍了关于Java基本知识点之变量和数据类型的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 在webservice里调用耗时方法出错的解决方案

    在webservice里调用耗时方法出错的解决方案

    这篇文章主要介绍了在webservice里调用耗时方法出错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Spring Boot Actuator管理日志的实现

    Spring Boot Actuator管理日志的实现

    本文主要介绍了Spring Boot Actuator管理日志的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • Spring Boot 配置 Quartz 定时任务的方法

    Spring Boot 配置 Quartz 定时任务的方法

    这篇文章主要介绍了Spring Boot 配置 Quartz 定时任务的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09

最新评论