不确定为什么会出现 NullPointerException 。
根据错误日志,执行此语句时抛出NullPointerException。 " file [i] = loadSaveFile.nextLine()"在剧本结束时。
public class SaveGame {
static String[] file;
static String loadSaveFile;
static String gameDir;
static int numLines = 0;
public static void main(String[] args) throws FileNotFoundException {
File saveFile = new File(gameDir + "\\savefile.txt");
Scanner loadSaveFile = new Scanner(saveFile);
Scanner findNumLines = new Scanner(saveFile);
while(findNumLines.hasNext() != false){
findNumLines.nextLine();
numLines++;
}
for (int i = 0; i < numLines; i++) {
file[i] = loadSaveFile.nextLine();
if(loadSaveFile.hasNextLine() == false){
break;
}
}
}
}
答案 0 :(得分:1)
您在任何时候都没有设置数组SaveGame.file
本身的值,因此它默认为null
。你需要做一些像
file = new String[numLines];
在while
循环和for
循环之间。