使用OpenCSV从csv读取流数据

时间:2016-09-24 06:42:22

标签: java android opencsv

我有加速计和陀螺仪传感器流数据,保存在下载文件夹中。 我希望实时读取所有数据或逐行读取数据流,但我无法超越第一行。

 try {
     CSVReader reader = newCSVReader(newFileReader(path.getAbsoluteFile()));
     {
          List<String[]>allRows = reader.readAll();
          for (String[]row :allRows)
          Log.i(TAG1,Arrays.toString(row));
          }
     } catch (FileNotFoundException e) {
       e.printStackTrace();
     } catch (IOException e) {
       e.printStackTrace();
     }

在输出中只打印第一行。 我需要阅读每一行,以便我可以进一步操作。

1 个答案:

答案 0 :(得分:1)

在文档中显示了两种不同的方法:

1-迭代器样式模式:

CSVReader reader = new CSVReader(new     FileReader("yourfile.csv")); 
String [] nextLine; 
while ((nextLine = reader.readNext()) != null)  
{ 
    // nextLine[] is an array of values from the line 
    System.out.println(nextLine[0] + nextLine[1] + "etc..."); 
 } 

2-使用列表:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv")); 
List<String[]> myEntries = reader.readAll(); 

for(String[] item : myEntries)
    System.out.println(item);

因此,如果这些示例中的任何一个显示您有多行,请检查您的文件是否只包含一行,也许您正在将所有数据写入第一行中的所有数据或类似内容。