我的Maven Web服务项目具有以下基本结构:
MyWebService\
|-- src\
| |-- main\
| | |-- java\
| | `-- resources\
| | `-- csvfiles\
| | `-- data.csv
| `-- test\
`-- target\
|-- classes\
`-- test-classes\
我正在尝试访问
csvfiles
子目录的resources
子目录中的.csv文件。我有一个使用此代码的课程:
public class ReadCSVFiles {
public void read(){
String separator = System.getProperty("file.separator");
ClassLoader cl = ReadCSVFiles.class.getClassLoader();
URL url = cl.getResource(separator + "src" + separator + "main" + separator + "resources" + separator + "csvfiles" + "data.csv");
url.toString();
}
}
路径最终是:
\src\main\resources\csvfiles\data.csv
我也尝试过这条路:
src\main\resources\csvfiles\data.csv
每当我运行应用程序时,总是在
NullPointerException
行上得到一个url.toString()
。因此,我该如何访问那些.csv数据文件?
最佳答案
如果您正在使用类加载器在类路径(资源文件夹)中获取资源,则只需使用相对路径即可:ReadCSVFiles.class.getClassLoader().getResource("csvfiles/data.csv");
Javadoc