如何将数据导出到Android中的csv文件?

时间:2015-01-05 00:43:22

标签: android csv sd-card opencsv

我使用以下格式创建了一个csv文件,我的目标是输出到设备的SD卡:

Ship Name,Scientist Name,Scientist Email,Sample Volume,Sample Colour,Longitude,Latitude,Material,Date

除了date的最后一个值之外,csv中的每个vales都是string类型。 csv文件的名称为AnalysisData.csv

我看过Stackoverflow上的例子,例如Export my data on CSV file from app android,但这会创建一个我不想要的新文件。

我已经将opencsv jar添加到我的项目中,所以只需要一个相关的例子。

有没有人对在Android中实现这一点有任何建议?

1 个答案:

答案 0 :(得分:24)

尝试使用此代码段:

  String baseDir = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
  String fileName = "AnalysisData.csv";
  String filePath = baseDir + File.separator + fileName;
  File f = new File(filePath);
  CSVWriter writer;

  // File exist
  if(f.exists()&&!f.isDirectory())
    {
      mFileWriter = new FileWriter(filePath, true);
      writer = new CSVWriter(mFileWriter);
    }
  else
    {
      writer = new CSVWriter(new FileWriter(filePath));
    }

    String[] data = {"Ship Name", "Scientist Name", "...", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").formatter.format(date)});

  writer.writeNext(data);

  writer.close();