嘿,所以我并没有真正搞砸它,但我想知道是否真的有一种方法(在我进入一个永无止境的兔子洞之前)在 Dart/Flutter 中读取和写入 CSV 文件?我需要写入文件,不一定要读取它们,而且我愿意竭尽全力这样做。任何库都可以,内置函数甚至更好。任何和所有的帮助表示赞赏!
5834 次
2 回答
8
使用csv来自https://pub.dartlang.org/packages/csv的包
如果您有List<List<dynamic>>需要转换为 csv 的项目,
String csv = const ListToCsvConverter().convert(yourListOfLists);
如果要将 csv 写入文件,
/// Write to a file
final directory = await getApplicationDocumentsDirectory();
final pathOfTheFileToWrite = directory.path + "/myCsvFile.csv";
File file = await File(pathOfTheFileToWrite);
file.writeAsString(csv);
此外,如果您想直接将 csv 文件读入list<list<dynamic>>
final input = new File('a/csv/file.txt').openRead();
final fields = await input.transform(UTF8.decoder).transform(csvCodec.decoder).toList();
于 2019-01-23T03:21:36.457 回答
1
根据新的软件包和指南(2019)使用以下代码
csv来自https://pub.dartlang.org/packages/csv的包。
如果您有List<List<dynamic>>需要转换为 csv 的项目,
String csv = const ListToCsvConverter().convert(yourListOfLists);
然后,您可以使用文件操作将字符串写入文件。
file.writeAsString('$csv');
此外,如果您想直接将 csv 文件读入list<list<dynamic>>
final input = new File('a/csv/file.txt').openRead();
final fields = await input.transform(utf8.decoder).transform(new CsvToListConverter()).toList();
于 2019-11-12T12:22:59.103 回答