Firebase 在颤振中执行热加载之前无法加载资源

Firebase 在颤振中执行热加载之前无法加载资源,firebase,flutter,google-cloud-firestore,Firebase,Flutter,Google Cloud Firestore,当我从文件选取器上载文件时,数据应直接插入到cloud firestore集合中,但我无法上载,直到我在颤振(ctrl+s)中执行热加载,然后记录才能成功上载到firebase集合中。如何通过单击“控制保存”执行热加载,将数据直接上载到firebase而无需再次重新加载 我在控制台中遇到的错误: E/flatter(10276):[错误:flatter/lib/ui/ui\u dart\u state.cc(177)]未处理的异常:无法加载资产:/data/user/0/com.example.

当我从文件选取器上载文件时,数据应直接插入到cloud firestore集合中,但我无法上载,直到我在颤振(ctrl+s)中执行热加载,然后记录才能成功上载到firebase集合中。如何通过单击“控制保存”执行热加载,将数据直接上载到firebase而无需再次重新加载

我在控制台中遇到的错误: E/flatter(10276):[错误:flatter/lib/ui/ui\u dart\u state.cc(177)]未处理的异常:无法加载资产:/data/user/0/com.example.simple\u flatter\u数据库/cache/file\u picker/sampleData-Copy.xlsx

  final databaseReference = Firestore.instance;
  // This function is triggered when the floating button is pressed
  Future _loadCSV() async {
    String filePath = await FilePicker.getFilePath();
    ByteData data = await rootBundle.load(filePath);
    var bytes = data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes);
    var excel = Excel.decodeBytes(bytes);
    for (var table in excel.tables.keys) {
      for (var row in excel.tables[table].rows) {
        await databaseReference.collection("vehicles").add({
          'Car_Make': row[3],
          'Company': row[4],
          'Holder_Type': row[2],
          'Holder_Name': row[1],
          'Vehicle_No': row[0],
        });
      }
      return Row();
    }
  }

您正在加载文件,而不是资源。使用
文件
类加载设备文件系统中的文件

final file=文件(filePath);
final content=file.readAsStringSync();

如何加载和读取文件?除了这个rootBundle.root之外,还有其他方法吗?因为当我控制save时,它可以工作。我更新了答案。E/flatter(14458):[ERROR:flatter/lib/ui/ui\u dart\u state.cc(177)]未处理的异常:NoSuchMethodError:getter“length”被调用为null。E/flatter(14458):接收器:空E/flatter(14458):尝试调用:纵向对文件执行什么操作?将csv文件上载到firebase cloud firestore集合