【发布时间】:2021-04-23 03:27:11
【问题描述】:
如何在flutter中将excel表格转换为json。
我有一张学生姓名和班级的 Excel 表格,我想将其转换为 json,以便于运行应用程序或以其他方式将日期上传到 Firestore。
Future<String> excelToJson() async {
var file = await FilePicker.getFilePath(
type: FileType.custom, allowedExtensions: ['xlsx', 'csv', 'xls']);
var bytes = File(file).readAsBytesSync();
var excel = Excel.decodeBytes(bytes);
int i = 0;
List<dynamic> keys = new List<dynamic>();
List<Map<String, dynamic>> json = new List<Map<String, dynamic>>();
for (var table in excel.tables.keys) {
for (var row in excel.tables[table].rows) {
if (i == 0) {
keys = row;
i++;
} else {
Map<String, dynamic> temp = Map<String, dynamic>();
int j = 0;
String tk = '';
for (var key in keys) {
tk = "\u201C" + key + "\u201D";
temp[tk] = (row[j].runtimeType==String)?"\u201C" + row[j].toString() + "\u201D":row[j];
j++;
}
json.add(temp);
}
}
}
print(json.length);
String fullJson = json.toString().substring(1, json.toString().length - 1);
return fullJson;}
我想学习如何在我的应用程序中使用这个脚本,或者其他更简单的方法
谢谢
【问题讨论】:
标签: flutter dart flutter-layout flutter-dependencies flutter-web