首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法从资源文件夹读取文件

无法从资源文件夹读取文件
EN

Stack Overflow用户
提问于 2018-06-03 08:30:03
回答 2查看 1.6K关注 0票数 2

最终编辑:现在代码看起来像这样

代码语言:javascript
复制
InputStream is = getClass().getResourceAsStream("/static/master-key.txt");
String masterKey = null;
Scanner scanner = new Scanner(is);
masterKey = scanner.nextLine();
System.out.println("the master key is " + masterKey);

原始帖子

resources文件夹读取txt文件时出现问题。

项目结构如下所示:

projStructure

当我调用以下代码时

代码语言:javascript
复制
System.out.println(getClass().getClassLoader().getResource("static/master-key.txt").getPath());
File mkFile = new File(getClass().getClassLoader().getResource("static/master-key.txt").getPath());

这就是发生的事情

代码语言:javascript
复制
/D:/Dropbox/Coding/Intellij%20IDEA/TishenkoKPO/target/classes/static/master-key.txt
java.io.FileNotFoundException: 
D:\Dropbox\Coding\Intellij%20IDEA\TishenkoKPO\target\classes\static\master-key.txt (System cannot find the specified path)

我用谷歌搜索了很多,但不知道为什么会这样

编辑1:按照社区建议重新构建的代码的一部分(将文件作为资源使用)

代码语言:javascript
复制
InputStream is = getClass().getResourceAsStream("static/master-key.txt");
String masterKey = null;
Scanner scanner = new Scanner(is);
masterKey = scanner.nextLine();
System.out.println("the master key is " + masterKey); //successfuly outputs the first line if exists 

编辑2:资源路径应以/开头

代码语言:javascript
复制
InputStream is = getClass().getResourceAsStream("/static/master-key.txt");
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-03 14:52:32

代码语言:javascript
复制
InputStream is = getClass().getResourceAsStream("static/master-key.txt");

这是搜索与调用它的类的包/目录相关的资源。很可能实际上可以找到相对于应用程序结构根的资源。要做到这一点,请添加一个前导/,如下所示。

代码语言:javascript
复制
InputStream is = getClass().getResourceAsStream("/static/master-key.txt");
票数 2
EN

Stack Overflow用户

发布于 2018-06-03 08:55:54

尝尝这个

代码语言:javascript
复制
getResource("resources\static\master-key.txt").getPath());

如果你的目标是一个路径,使用'\‘而不是'/’。你可以试一试

代码语言:javascript
复制
YourClass.class.getResourceAsStream("resources\static\master-key.txt");

代码语言:javascript
复制
YourClass.class.getResourceAsStream("static\master-key.txt");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50662313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档