1 回答
TA贡献1836条经验 获得超4个赞
假设您已经阅读了文件并将所有行存储在ArrayList您完成的文件中。
List<String> list = new ArrayList();
String pathname = "F:\\Calibration.txt";
try (FileReader reader = new FileReader(pathname);
BufferedReader br = new BufferedReader(reader))
{
String line;
while ((line = br.readLine()) != null) {
list.add(line);
}
}
如果你的第一行是
27311,28841,30577,31583,0
然后在这一行中,第 1 列(或索引 0)的值为 27311,
第 2 列 =28841,
第 3 列 =30577 等等..
如果你想要第 nth(或 n-1 索引)行的第 ith(或 i-1 索引)列,你需要执行以下操作:
String row = list.get(n-1); //row n
String[] columns = row.split(",");//this gives you the columns
//Now access any column
String col1 = columns[0];
String colI = columns[i-1];
现在,根据您的预期输出,您需要所有行的第一列。因此,您需要迭代列表,拆分它们并获取第一列。
//iterate the list
for(String line : list){
String[] columns = line.split(",");
String col0 = columns[0];
System.out.println("column 1 : "+col0);
}
如果您只想要每一行的第一列,另一种方法是使用正则表达式删除其他列和逗号。
//iterate the list
for(String line : list){
String col0 = line.replaceFirst("\\s*,.*", "");
System.out.println("column 1 : "+col0);
}
要打印所有列,您还需要遍历列数组,如下所示。
//iterate the list
for(String line : list){
String[] columns = line.split(",");
for(int i =0; i<columns.length; i++)
System.out.println("column "+ i +": "+columns[i]);
}
添加回答
举报