Java程序中读取外部文件时的路径问题

Posted 西红柿鸡蛋面

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java程序中读取外部文件时的路径问题相关的知识,希望对你有一定的参考价值。

转自:https://www.cnblogs.com/wt20/p/8320346.html

项目经常会读取一些配置文件, 因此getResource方法便能够起到重要作用

使用时主要是两种方法, 一个是字节码文件Class类, 另一个是ClassLoader类加载器

使用Class类时有两种使用方式:

1. 使用"/"  获取到的是classpath路径

2. 不使用"/" 这就是相对路径

ClassLoader类

没有"/"的写法, 获取到的就是classpath路径

测试代码

public class GetResourceTest {

    public static void main(String[] args) {
        System.out.println(GetResourceTest.class.getResource("/test.properties").getPath());
        System.out.println(GetResourceTest.class.getResource("test1.properties").getPath());
        System.out.println(GetResourceTest.class.getClassLoader().getResource("test.properties").getPath());
        System.out.println(GetResourceTest.class.getClassLoader().getResource("/"));
    }

}

结果:

/E:/IdeaJava/studyTest/out/production/studyTest/test.properties
/E:/IdeaJava/studyTest/out/production/studyTest/com/waston/Test/test1.properties
/E:/IdeaJava/studyTest/out/production/studyTest/test.properties
null

工程包结构

以上为https://www.cnblogs.com/wt20/p/8320346.html博主所写

 

最近在做项目时需要对数据库的历史数据进行处理,由于对oracle数据库的定时任务不熟悉所以使用Java编写了一个定时任务

在程序中需要读取一个ctl文件,但是,如果给定目录的话,给客户运行时可能由于文件放在位置出错而不能读取到文件,尝试使用虚拟路径,没有成功,在网上搜到使用此方法可以获取到目录,尝试使用,成功。

 

 

 

 

 

 

以上是关于Java程序中读取外部文件时的路径问题的主要内容,如果未能解决你的问题,请参考以下文章

jar包里面的代码如何读取jar包中的配置文件?

java 读取配置文件路径问题

java 程序打包为jar发布后,读取配置文件路径出错 ,怎样获取配置文件路径?

java读取properties配置文件路径问题

java web工程,读取配置文件路径问题

SAS编程:如何批量读入某路径下外部文档数据?