0

40個の名前を含むtxtファイルがあります。それぞれの名前は独自の行にあります。このメソッドは、それぞれの名前を取得して4つの要素の配列に配置し、その配列を取得して、別のメソッドを使用してそれらのファイルを別のtxtファイルに書き込む必要があります。

私の問題は、リスト内の4番目の名前がどういうわけかnullになり、出力txtファイルが10行になり、各行の4番目の要素がnullになることです。

以下にコードとサンプルI/Oを提供しました。前もって感謝します!

サンプル入力

Emily
Reba
Emma
Abigail
Jeannie
Isabella
Hannah
Samantha

私の方法

public static void fillArray(String[] player ,String[] team, BufferedReader br) throws IOException{
  String line;
  int count = 0;

  while((line = br.readLine()) != null){
    if(count < 3){
       player[count] = line;
       count++;
    }
    else{
       count = 0;
       writeFile(player);
    }
  }
  br.close();

}

サンプル出力

Emily Reba Emma null 
Jeannie Isabella Hannah null 
4

1 に答える 1

2

あなたの論理は正しくありません。player[3]が設定されることはなく、次のループでは、配列に格納せずに行を読み取ることになります。これを使って:

public static void fillArray(String[] player ,String[] team, BufferedReader br) throws IOException{
  String line;
  int count = 0;

  while((line = br.readLine()) != null){
    player[count] = line;
    count++;
    if (count == 4) {
       count = 0;
       writeFile(player);
    }
  }
于 2013-02-14T03:23:59.900 に答える