小颜学开发 2019-04-08 16:42 采纳率: 100%
浏览 1365
已采纳

MVC NPOI 导出excel 2007 文件损坏

MVC下用NPOI导出excel2007,无法打开文件,提示文件已经损坏。导出2003就没有问题。

        public FileResult Export_()
        {
            XSSFWorkbook workbook = new XSSFWorkbook();
            //创建一个Excel的Sheet
            ISheet sheet = workbook.CreateSheet();
            for (int i = 0; i <= 15; i++)
            {
                IRow row = sheet.CreateRow(i);
                for (int j = 0; j < 15; j++)
                {
                    row.CreateCell(j).SetCellValue(i + "行" + j + "列");
                }
            }

            NpoiMemoryStream ms = new NpoiMemoryStream();
            ms.AllowClose = false;
            workbook.Write(ms);
            ms.Flush();
            ms.Seek(0, SeekOrigin.Begin);

            //var memoryStream = Session["table"] as NpoiMemoryStream;

            workbook.Write(ms);
            ms.Close();

            return File(ms, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "ActualThroughPut.xlsx");
        }

这个怎么解决啊,急急急!!!

  • 写回答

3条回答

  • ch598303706 2019-04-08 17:42
    关注

    了解下这个 Aspose.Cells 插件 ,简直不能太好用

       Workbook workbook = new Workbook();
            Worksheet sheet = (Worksheet)workbook.Worksheets[0];
    
                //写值 表头
                Cells ucells = sheet.Cells;
                ucells[0, 0].PutValue("测试");
    
    
    
                        ucells[1, 0].PutValue("测试");
    
    
    
            using (MemoryStream ms = new MemoryStream())
            {
                workbook.Save(ms, new OoxmlSaveOptions(SaveFormat.Xlsx));//默认支持xls版,需要修改指定版本 
                string filename = string.Format("{0}.xlsx", "测试");
                return File(ms.ToArray(), "application/ms-excel", filename);
            }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序