私は現在課題を取り組んでおり、ブックとJavaサイトを何回も繰り返してきたので、どこが間違っているのか分かりません。.txtファイルを2D文字列配列にロードする
ファイルを2D配列にインポートしようとしています。 Scanner with BufferedReaderとFileReaderを使用してコマンドライン引数(titanic.txt)を選択しています。私は// TESTのif文で "fileInput"がまだnullであるかどうかを調べます。実行中にビルド中に問題は発生しません。ここで
は、私のコードの一部です://Declare Variables
String[][] titanicArray = new String[1308][6];
int[] classArray = new int[1308];
int[] survivedIntArray = new int[1308];
double[] ageArray = new double[1308];
double[] ticketPriceArray = new double[1308];
String inputFile = null;
String answerStr = null;
int answer1 = 0;
Scanner fileInput = null;
Scanner userInput = new Scanner(System.in);
inputFile = args[0];
//try statement to scan command-line argument and fill the array with the data
try {
fileInput = new Scanner(new BufferedReader(new FileReader(inputFile)));
//TEST
if (fileInput != null){
System.out.println("Error Taking in file");
}
for (int row = 0; row < titanicArray.length; row++) {
for (int col = 0; col < titanicArray[row].length; col++){
while (fileInput.hasNext()){
titanicArray[row][col] = fileInput.next();
}
}
}
} finally {
if (fileInput != null){
System.out.println("Error Taking in file");
fileInput.close();
}//End of If for closing Scanner
} //End of finally to close Scanner
注:titanic.txtは以下のようなデータを持っている(クラス、Suvived、名前、性別、年齢、TicketPrice)/タブなし空白行ワット:
1 1・アレン、ミス。エリザベートウォルトン女性29 211.3375
1 1アリソン、マスター。ハドソントレバー男性0.9167 151.5500
1 0アリソン、ミス。ヘレン・ロレイン女性2 151.5500
1 0アリソン氏、ハドソンジョシュアクレイトン男性30 151.5500
1 0アリソン、夫人ハドソンJC(ベッシーワルド・ダニエルズ)、女性25 151.5500
1 1・アンダーソン氏、ハリー男性48 26.5500
1 1アンドリュース、ミス。Korneliaテオドージア女性63 77.9583
どのような「問題」がありますか? –
_このコードは機能しません。問題はどこにありますか? – Sanjeev