私はファイルを読み取って、String
そのファイルで何回発生するかを把握しようとしています。回数に応じて、プレイヤーに異なるダイアログが表示されます(ゲームです)。これが私のコードです
/**
* Selects which dialogue to send depending on how many times the player has been jailed
* @return The dialogue ID
*/
public static int selectChat() {
System.err.println("Got to selectChar()");
FileUtil.stringOccurrences(c.playerName, // NULLPOINTER HAPPENS HERE
"./data/restrictions/TimesJailed.txt");
if (FileUtil.stringCount == 1)
return 495;
if (FileUtil.stringCount == 2)
return 496;
if (FileUtil.stringCount >= 3) {
return 497;
}
return 0;
}
そして、これが実際のファイル読み取り方法です
public static int stringCount;
/**
* @param string
* @param filePath
* @return How many occurrences of the string there are in the file
*/
public static int stringOccurrences(String string, String filePath) {
int count = 0;
try {
FileInputStream fstream = new FileInputStream(filePath);
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
if (strLine.contains(string))
count++;
}
in.close();
}
catch (Exception e) { // Catch exception if any
System.err.println("Error: " + e.getMessage());
}
System.err.println(count);
stringCount = count;
return count;
}
これが私がcで行うすべてです
Client c;
public Jail(Client c) {
this.c = c;
}
誰かが私が問題を解決するのを手伝ってくれませんか。