ExcelReader.cs 901 B

1234567891011121314151617181920212223242526272829
  1. using ExcelDataReader;
  2. using Microsoft.AspNetCore.Http;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Data;
  6. using System.IO;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace ZR.Common
  11. {
  12. public class ExcelReader
  13. {
  14. public static DataSet ReadExcel(IFormFile formFile)
  15. {
  16. IExcelDataReader? readerData = null;
  17. using Stream stream = formFile.OpenReadStream();
  18. //根据excel扩展名选择对应的读取文件流方式
  19. switch (formFile.FileName.Split('.').Last().ToLower())
  20. {
  21. case "xls": readerData = ExcelReaderFactory.CreateBinaryReader(stream); break;
  22. case "xlsx": readerData = ExcelReaderFactory.CreateOpenXmlReader(stream); break;
  23. default: break;
  24. }
  25. return readerData?.AsDataSet();
  26. }
  27. }
  28. }