gpt4 book ai didi

dart - Assets 文件夹中的 Flutter Excel 工作表

转载 作者:IT王子 更新时间:2023-10-29 06:53:20 24 4
gpt4 key购买 nike

我正在创建一个应用程序,我将在其中发送一封附有 Excel 表格的电子邮件。
我已经有了 Excel 工作表,我的应用程序将在发送之前向 Excel 工作表添加一些数据。

然而,在尝试将 excel 工作表添加到我的 Assets 文件夹后,将路径添加到 pubspec.yaml 中,File 类找不到该文件。

File structure

pubspec.yaml:

 assets:
- logo.png
- Declaratieformulier.xlsx

功能:

openFile() {
var bytes = new File("assets/Declaratieformulier.xlsx").readAsBytesSync();
var decoder = new SpreadsheetDecoder.decodeBytes(bytes);
var table = decoder.tables['Blad1'];

我做了一些挖掘,发现 Assets 并没有作为文件放在设备上,而是包含在 APK 中。

所以我的问题是:如何在我的应用程序中包含 Excel 工作表,以便我可以读取它并将其另存为手机上的新 Excel 文件?

最佳答案

您必须在 pubspec.yaml 中插入完整路径,因此您必须添加 assets/Declaratieformulier.xlsx 而不是 Declaratieformulier.xlsx .

assets:
- logo.png
- assets/Declaratieformulier.xlsx

你还应该阅读根包的文件

import 'package:flutter/services.dart' show ByteData, rootBundle;

...

ByteData data = await rootBundle.load("assets/Declaratieformulier.xlsx");
List<int> bytes = data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes);
var decoder = SpreadsheetDecoder.decodeBytes(bytes);

关于dart - Assets 文件夹中的 Flutter Excel 工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55921063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com