Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中将数据导出到csv文件?_Android_Csv_Sd Card_Opencsv - Fatal编程技术网

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

如何在Android中将数据导出到csv文件?,android,csv,sd-card,opencsv,Android,Csv,Sd Card,Opencsv,我创建了一个具有以下格式的csv文件,旨在将其输出到设备的sd卡: Ship Name,Scientist Name,Scientist Email,Sample Volume,Sample Colour,Longitude,Latitude,Material,Date csv中的每个值都将是字符串类型,日期的最后一个值除外。 csv文件的名称为AnalysisData.csv 我看过Stackoverflow的例子,但这会创建一个我不想要的新文件 我已经将opencsv jar添加到我的项目

我创建了一个具有以下格式的csv文件,旨在将其输出到设备的sd卡:

Ship Name,Scientist Name,Scientist Email,Sample Volume,Sample Colour,Longitude,Latitude,Material,Date
csv中的每个值都将是字符串类型,日期的最后一个值除外。 csv文件的名称为
AnalysisData.csv

我看过Stackoverflow的例子,但这会创建一个我不想要的新文件

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


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

尝试以下代码片段:

  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(新字符串[]{“Scientist name”,analystName})
但是格式不正确,也许我可以使用一种新的行格式?使用
writeNext
你能给我一个例子说明如何将
写入。下一步请将
应用到上面的代码中吗?仅供参考,我在添加com.opencsv:opencsv:4.0.compile'com.opencsv:opencsv:4.0'