我有一个制表符分隔的文件,我必须从文件中读取数据。
Col1 Col2 Col3
data1 data2 data3
data1 data2 data3
如果所有列都存在值,则没有问题。问题是有时少数列可能不包含以下值。
Col1 Col2 Col3
data1 data3
data1 data2
在上述数据中,我能够读取第一行数据,因为 col2 的值将是空字符串。但是第二行的 col3 没有数据。在这里我得到数组索引越界异常。为什么我没有得到第二行 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];
}
谢谢!