Mvc5文件上传并读取excel内容

本文关键字:读取 excel 内容 文件 Mvc5 | 更新日期: 2023-09-27 18:25:07

我正试图使用mvc5保存和读取xls文件,但我遇到了保存的文件无法被excel读取的问题。。。有人能帮我吗?我可能遗漏了什么。

public class ExcelFileUpload
{
    [DisplayName("Wybierz plik excela")]
    [Required]
    public HttpPostedFileBase File { get; set; }
}
    [HttpPost]
    public ActionResult Upload(ExcelFileUpload excel)
    {
        if (excel.File.FileName.Contains(".xls"))
        {
            var fileBytes = new byte[excel.File.ContentLength];
            var ms = new MemoryStream(fileBytes);
            var temp = Path.GetTempPath();
            var file = Path.GetFileNameWithoutExtension(Path.GetRandomFileName());
            var path = Path.Combine(temp, file + ".xls");
            using (var fs = new FileStream(path, FileMode.Create, FileAccess.Write))
            {
                ms.WriteTo(fs);
            }
            if (System.IO.File.Exists(path))
            {
                var ei = new ExcelImporter(path);
                ei.excel_getValue("A1");
            }
        }
        return View(excel);
    }

Mvc5文件上传并读取excel内容

您可以使用Excel Office手动打开上传的Excel文件吗?

如果没有,则在上传文件时会出现问题,并且与Excel格式无关。

当你可以用Excel打开文件时,问题可能出现在ExcelImporter类中。

处理新的.xlsx文件格式很容易,然后可以使用OpenXML SDK,请参阅:http://msdn.microsoft.com/en-us/library/office/bb448854%28v=office.15%29.aspx