我一直致力于将现有java项目的代码调整到android环境中。
我从对应于精灵表的整数文本文件加载地图。
e.g. 0=grass 1=wall
0 0 0 1 1 1 0 0 0
0 0 0 1 1 1 0 0 0
0 0 0 1 1 1 0 0 0
-
这是以前完成的: (扫描仪和缓冲读卡器)
mapData = new Scanner(new BufferedReader(new FileReader(fileName)));
mapData.next();
for (int i = 0; i < 3; i++) {
for (int y = 0; y < 30; y++) {
for (int x = 0; x < 50; x++) {
map[i][x][y] = mapData.nextInt();
}
}
mapData.next();
}
-
过去几天我一直在努力适应这种情况,它处于一个工作状态,但需要5分钟才能完成1秒的工作
mapData = new Scanner(new BufferedReader(new InputStreamReader(context.getResources().openRawResource(map1))));
mapData.next();
for (int i = 0; i < 3; i++) {
for (int y = 0; y < 30; y++) {
for (int x = 0; x < 50; x++) {
map[i][x][y] = mapData.nextInt();
}
}
mapData.next();
}
(map1是另一个类传递的.txt文件)
我在这里做错了什么,或者我应该用什么其他方法来完成这项任务?
由于 -Lyndon
答案 0 :(得分:0)
我似乎找到了解决这个问题的方法。
更换
map[i][x][y] = mapData.nextInt();
使用:
map[i][x][y] = Integer.parseInt(mapData.next());
对速度/
进行了大量修正