参考链接:How do I read a resource file from a Java jar file?
我正在尝试使用您的代码库并尝试阅读位于我的项目目录sample.csv
中的src/main/resources
内容。我无法阅读内容,它说无法读取文件。输出:
[无法读取文件:
sample.csv
]
//在此检查后,在您的while循环中添加 / *如果是目录,则跳过它。 * /
我的意思是当检测到文件时,接下来是我添加的下面的代码片段以读取文件内容
if(entry.getName().contains("sample.csv")) {
File f1 = new File("sample.csv");
if(f1.canRead()) {
List<String> lines = Files.readAllLines(f1.toPath());
System.out.println("Lines in file: "+lines.size());
} else {
System.out.println("Can not read file: "+entry.getName());
}
}
任何人都可以告诉我这里我做错了什么,我怎样才能让它发挥作用?
我的要求是:
Service.jar
在其pom.xml中导入Parser.jar
库Parser.jar
FnmaUtils-3.2-fieldMapping.csv
目录中有src/main/resources
个文件有一个FnmaUtils
类在其构造函数中加载FnmaUtils-3.2-fieldMapping.csv
,此类是Parser.jar
的一部分 - 我在这里尝试阅读内容{{1} },此步骤始终失败并出现以下错误,尝试了[How do I read a resource file from a Java jar file?
FnmaUtils-3.2-fieldMapping.csv
获取错误:
public FnmaUtils() {
String mappingFileUrl = null;
try {
Resource resource = new ClassPathResource("FnmaUtils-3.2-fieldMapping.csv");
mappingFileUrl = resource.getFile().getPath();
loadFnmaTemplate(mappingFileUrl);
} catch (Exception e) {
e.printStackTrace();
LOGGER.error("Error loading fnma template file ", e);
}
}
这里出了什么问题?
答案 0 :(得分:0)
尝试
InputStream in = this.getClass()。getClassLoader() .getResourceAsStream( “SomeTextFile.txt”);
确保资源位于类路径中。