【问题标题】:How to export data to csv file in Android?如何在 Android 中将数据导出到 csv 文件?
【发布时间】:2015-03-02 13:07:44
【问题描述】:

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

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

除了日期的最后一个值之外,csv 中的每个值都是字符串类型。 csv文件的名字是AnalysisData.csv

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

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

有人对在 Android 中实现这一点有什么建议吗?

【问题讨论】:

    标签: android csv sd-card opencsv


    【解决方案1】:

    试试这个代码 sn-p :

      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();
    

    【讨论】:

    • 上面的代码有效..但是如何格式化 csv 以便数据显示在数据标题下方?目前数据和字段名称一样输出"Ship Name","Maria" "Scientist Name","Joh Doe" 这是我用来添加数据的代码data.add(new String[] {"Scientist Name", analystName}); 但格式不正确,也许我可以使用新的行格式?
    • 你能告诉我如何将write.next 应用到上面的代码吗?
    • 仅供参考,在添加 com.opencsv:opencsv:4.0 时,我对 CSVWriter 的 commons-logging 依赖项有一个 Gradle 警告。
    • 编译'com.opencsv:opencsv:4.0'
    猜你喜欢
    • 2015-09-30
    • 2018-12-05
    • 1970-01-01
    • 1970-01-01
    • 2013-03-19
    • 2014-01-09
    • 1970-01-01
    • 2017-10-16
    • 2014-08-07
    相关资源
    最近更新 更多