アプリの情報を、あるテキスト ファイルから別のテキスト ファイルに更新したいと考えています。私のコードの別の場所で動作しますが、ここでは、まったく同じように見えますが、動作しません。
プログラムはwhile
、ファイルにnextLine
. ファイルの最初の 5 行はプレーヤーのスコアで、次の 5 行はプレーヤーの名前です。私は現在、最初の5つまで完全に機能していますが、名前に関してはめちゃくちゃです:名前1を読み取り、名前2を見逃し、残りの3を読み取ります。この時点で、ループから抜け出し、ループfor loop
を再開します。 while
(私が思うに) プログラムは行が抜けていることを知っています。次に、名前 2 を読み取り、それでスコア 1 を上書きし、最後に再度読み取りを試み、その時点でクラッシュします。
while(!readDone)
{
System.out.println("!Done");
while (readFile.hasNextLine())
{
System.out.println("second While Loop");
for(int j = 0;j<10;j++)
{
if(j<5)
{
System.out.println("For Loop!" + j + "scores");
score[j] = readFile.nextLine();
System.out.println(score[j]);
}
if(j==5 || j>5)
{
System.out.println("For Loop!" + j + "names");
usernames[j-5] = readFile.nextLine();
System.out.println(usernames[j-5]);
}
}
System.out.println("Exit For Loop");
readDone = true;
}
System.out.println("Exit second while");
}
System.out.println("DONE");
上記のコードから、なぜこれが起こっているのかについてのアイデアはありますか? LogCat コンソールに出力しているので、名前 2 が欠落していることがわかります。