タブ区切りのファイルがあり、ファイルからデータを読み取る必要があります。
Col1 Col2 Col3
data1 data2 data3
data1 data2 data3
すべての列に値が存在する場合、問題はありません。問題は、いくつかの列に以下のような値が含まれていない場合があることです。
Col1 Col2 Col3
data1 data3
data1 data2
上記のデータでは、col2 の値が空の文字列になるため、最初の行のデータを読み取ることができます。しかし、2 行目の col3 にはデータがありません。ここで、配列インデックスが範囲外の例外を取得します。2 行目の col3 に空の文字列が表示されないのはなぜですか?
私は以下のコードを使用しています:
String dataFileName = "C:\\Documents and Settings\\User1\\some.txt";
/**
* Creating a buffered reader to read the file
*/
BufferedReader bReader = new BufferedReader(
new FileReader(dataFileName));
String line;
/**
* Looping the read block until all lines in the file are read.
*/
while ((line = bReader.readLine()) != null) {
/**
* Splitting the content of tabbed separated line
*/
String datavalue[] = line.split("\t");
String value1 = datavalue[0];
String value2 = datavalue[1];
String value3 = datavalue[2];
}
ありがとう!