flutter web端 上传Excel 文件

709 阅读1分钟

在Web端实现文件上传中 遇见 data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base 在浏览器调试中发现问题

解决法案: 我电脑装的是WPS,而测试出该问题的测试人员安装的是office,文件格式问题 部分代码:

    if (encoded.contains('data:application/octet-stream;base64,')) {
  stripped = encoded.replaceFirst(
      RegExp(r'data:application/octet-stream;base64,'), '');
} else if(encoded.contains('data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,')){
  stripped = encoded.replaceFirst(
      RegExp(r'data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,'), '');
}else if(encoded.contains('data:application/vnd.ms-excel;base64,')){
  stripped = encoded.replaceFirst(
      RegExp(r'data:application/vnd.ms-excel;base64,'), '');
}

.xls 对应 data:application/vnd.ms-excel;base64,
.xlsx 对应 data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,
wps 对应 data:application/octet-stream;base64,

------------ 后续附上

1.txt data:text/plain;base64,

2.doc data:application/msword;base64,

3.docx data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,

4.xls data:application/vnd.ms-excel;base64,

5.xlsx data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,

6.pdf data:application/pdf;base64,

7.pptx data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,

8.ppt data:application/vnd.ms-powerpoint;base64,

图片

1.png data:image/png;base64,

2.jpg data:image/jpeg;base64,

3.gif data:image/gif;base64,

4.svg data:image/svg+xml;base64,

5.ico data:image/x-icon;base64,

6.bmp data:image/bmp;base64,