导出的Excel下载下来打开总是提示错误。
错误提示:EXCEL中发现不可读的内容。是否恢复此工作薄的内容?如果信任此工作薄的来源,请单击“是”。 单击“是”后:Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃。
解决代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | MemoryStream ms = new MemoryStream(); ep.SaveAs(ms);//MemoryStream string fileName = HttpUtility.UrlEncode(string.Format("{0}.xlsx", "canomo.com")); Response.Clear(); Response.ClearHeaders(); Response.ClearContent(); //Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";//可以不用指定ContentType Response.ContentType = "application/download"; Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}", fileName)); Response.AddHeader("Content-Length", ms.ToArray().Length.ToString());//加上设置大小下载下来的.xlsx文件打开时才没有错误 Response.BinaryWrite(ms.ToArray()); ms.Close(); ms.Dispose(); Response.End(); |