我试图使用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);
}
答案 0 :(得分:0)
您是否可以使用Excel Office手动打开上传的Excel文件?
如果没有,则在上传文件时出现问题,并且与Excel格式无关。
当您可以使用Excel打开文件时,问题的存在应该出现在ExcelImporter类中。
处理新的.xlsx文件格式很容易,然后你可以使用OpenXML SDK, 看到: http://msdn.microsoft.com/en-us/library/office/bb448854%28v=office.15%29.aspx