【发布时间】:2021-12-04 22:57:29
【问题描述】:
我想将 csv 转换为 List 我的代码正在运行并获取文件并将其转换如下:
[[项目 1;1200;1300],[项目 2;1200;1300]]。
它将 [item 1;1200;1300] 作为单个元素处理,我无法单独到达 item 1 或 1200 或 1300。
我想像这样处理它 List[0][0] 结果将是第 1 项。
TextButton(
onPressed: () async {
result = await FilePicker.platform.pickFiles(
type: FileType.custom,
allowedExtensions: ['csv'],
dialogTitle: 'Choose Your File',
);
if (result != null) {
PlatformFile file = result!.files.first;
filePath = file.path!;
prvdr.openFile(filePath);
} else {}
},
child: const Text('Press Here'),
),
函数
void openFile(filePath) async {
File itemsFile = File(filePath);
print('CSV to List');
final input = itemsFile.openRead();
final fields = await input.transform(utf8.decoder).transform(const CsvToListConverter()).toList();
print(fields);
for(var i = 0; i < fields.length; i++){
print(fields[i][0]);
print(fields[i][1]);
print(fields[i][2]);
}
}
我的csv是这样的
item 1;1200;1300
item 2;1200;1300
item 3;1200;1300
item 4;1200;1300
【问题讨论】: