我有一个.txt文件,希望将其读入并将其内容存储为数组列表。 .txt文件中的数据如下:
1984 1 0.20 25.10 4.40 11.20 0.60 4.80 0.10 0.00 5.90 22.50 5.90 12.70 6.00 3.80 0.60 10.70 4.20 0.00 0.00 0.00 7.90 4.00 23.70 3.20 5.80 3.00 0.60 6.00 1.70 7.50 1.20
全部在一行中,1984年为一年,一个月为一个月,其他值为相应的几个月。我希望将每一行(理想情况下,每个变量)存储在一个不同的插槽中,以便通过索引轻松访问它。
我编写了这段代码,以便读入文件并将变量存储在数组列表中,因为我不确定所需数组的大小。
import java.io.*;
import java.util.*;
public class reader {
public static void main(String[] args) {
try {
BufferedReader reader = new BufferedReader(new FileReader(
"2RainfallDataLanc.txt"));
String line = null;
ArrayList<String[]> rows = new ArrayList<String[]>();
while ((line = reader.readLine()) != null) {
String[] row = line.split("/t");
rows.add(row);
}
System.out.println(rows.toString());
} catch (IOException e) {
}
}
}
我收到错误消息。有人能告诉我我的代码有什么问题吗?
答案 0 :(得分:1)
尝试使用
for (String[] row : rows) {
System.out.println(Arrays.toString(row));
}
查看输出。数组上的ToString不会产生任何有用的东西
假设您的数据点由空格分隔,您可以尝试使用此行解析它们
String[] row = line.split("\\s+");
+表示前面有一个或多个符号出现(\ s是空格的简写,见Regular Expressions in Java)