| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- using Microsoft.AspNetCore.Http;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using OfficeOpenXml;
- namespace MadRunFabric.Common
- {
- public interface IFormFile
- {
- string ContentType { get; }
- string ContentDisposition { get; }
- IHeaderDictionary Headers { get; }
- long Length { get; }
- string Name { get; }
- string FileName { get; }
- Stream OpenReadStream();
- void CopyTo(Stream target);
- Task CopyToAsync(Stream target, CancellationToken cancellationToken);
- }
- public class ExcelHelper
- {
- /// <summary>
- /// 导入Excel
- /// </summary>
- /// <param name="filepath"></param>
- /// <param name="filename"></param>
- /// <param name="excelfile"></param>
- /// <returns></returns>
- public DataTable ImportExcel(string filepath, string filename, FileStream excelfile)
- {
- //string sWebRootFolder = _hostingEnvironment.WebRootPath;
- //string sFileName = $"{Guid.NewGuid()}.xlsx";
- FileInfo file = new FileInfo(Path.Combine(filepath, filename));
- DataTable dt = new DataTable();
- try
- {
- using (FileStream fs = new FileStream(file.ToString(), FileMode.Create))
- {
- excelfile.CopyTo(fs);
- fs.Flush();
- }
- using (ExcelPackage package = new ExcelPackage(file))
- {
- //StringBuilder sb = new StringBuilder();
- ExcelWorksheet worksheet = package.Workbook.Worksheets[1];
- int rowCount = worksheet.Dimension.Rows;
- int ColCount = worksheet.Dimension.Columns;
- for (int col = 1; col <= ColCount; col++)
- {
- dt.Columns.Add(worksheet.Cells[1, col].Value.ToString());
- }
- //bool bHeaderRow = true;
- for (int row = 2; row <= rowCount; row++)
- {
- for (int col = 1; col <= ColCount; col++)
- {
- dt.Rows[row - 1][col - 1] = worksheet.Cells[row, col].Value.ToString();
- //if (bHeaderRow)
- //{
- // sb.Append(worksheet.Cells[row, col].Value.ToString() + "\t");
- //}
- //else
- //{
- //sb.Append(worksheet.Cells[row, col].Value.ToString() + "\t");
- //}
- }
- //sb.Append(Environment.NewLine);
- //bHeaderRow = false;
- }
- return dt;// Content(sb.ToString());
- }
- }
- catch (Exception ex)
- {
- return null;
- }
- }
- }
- }
|