- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作一个打开和读取 png 和 txt 文件的程序。这是我的代码:
public static void init() {
//...
//compiler are finding a path for png files...
menu = ImageLoader.loadImage("/textures/menu.png");
options = ImageLoader.loadImage("/textures/options.png");
level = ImageLoader.loadImage("/textures/levelmenu.png");
levelOptions = ImageLoader.loadImage("/textures/leveloptions.png");
//..., but no for txt
map[0] = new LoadMap("/textures/lvl1.txt");
map[1] = new LoadMap("/textures/lvl2.txt");
map[2] = new LoadMap("/textures/lvl3.txt");
map[3] = new LoadMap("/textures/lvl4.txt");
map[4] = new LoadMap("/textures/lvl5.txt");
//...
}
但是当我运行它时,我收到此错误:
\textures\lvl1.txt (The system cannot find the file specified)
\textures\lvl2.txt (The system cannot find the file specified)
\textures\lvl3.txt (The system cannot find the file specified)
\textures\lvl4.txt (The system cannot find the file specified)
\textures\lvl5.txt (The system cannot find the file specified)
我的文件 lvl1...5.txt 和 menu...levelOptions.png 位于同一目录
LoadMap 构造函数:
public LoadMap(String path) {
try {
BufferedReader reader = new BufferedReader(new FileReader(path));
String s = " ";
s = reader.readLine();
String[] wordsXY = s.split(" ");
x = wordsXY[0];
iX = Integer.parseInt(x);
y = wordsXY[1];
iY = Integer.parseInt(y);
while ((s = reader.readLine()) != null) {
String[] words = s.split(" ");
for (int i = 0; i < iY; i++) {
arrayList.add(Integer.parseInt(words[i]));
}
}
reader.close();
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
ImageLoader类:
public class ImageLoader {
public static BufferedImage loadImage(String path) {
try {
return ImageIO.read(ImageLoader.class.getResource(path));
} catch (IOException e) {
System.out.println(e.getMessage());
System.exit(1);
}
return null;
}
}
解决方案:
问题出在 loadMap 类中。
相反:
BufferedReader reader = new BufferedReader(new FileReader(path));
应该是:
InputStream is = getClass().getResourceAsStream(path);
InputStreamReader isr = new InputStreamReader(is);
BufferedReader reader = new BufferedReader(isr);
感谢您的帮助。
最佳答案
ImageLoader
从类路径加载资源,而 LoadMap
从文件系统加载资源,因此结果不同。
更具体地说,这会返回一个 InputStream
,该文件对应于 ImageLoader
类的类路径中的路径 path
的文件:
ImageLoader.class.getResource(path)
下面创建了一个 Reader
,它从文件系统中的文件中读取:
new FileReader(path)
您应该对这两种情况使用相同的机制以获得相同的结果。
关于java - 系统找不到java中指定的txt文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47945774/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!