如何在flutter中从设备存储读取CSV文件

Jah*_*tul 4 csv dart flutter

我想将数据从 flutter 中的 CSV 文件导入到 firebase 数据库中。因此,我使用文件选择器从设备中选择 .CSV 文件。现在我如何从该文件中读取数据?

Jah*_*tul 8

首先从 dart 包导入 file_picker 和 CSV 包。比定义方法 pickFile() 如下所示。它将从设备存储中选择文件,选择后它将打印数据。应调用 pickFile() 函数来获取结果。

import 'package:file_picker/file_picker.dart';
import 'package:csv/csv.dart';
import 'dart:convert' show utf8;

pickFile() async {
   FilePickerResult result = await FilePicker.platform.pickFiles();
   if (result != null) {
     PlatformFile file = result.files.first;

     final input = new File(file.path).openRead();
     final fields = await input
         .transform(utf8.decoder)
         .transform(new CsvToListConverter())
         .toList();

     print(fields);
   }
 }
Run Code Online (Sandbox Code Playgroud)