使用XSSFWorkbook,为OnPost方法,创建一个下载的表格
时间: 2024-05-04 15:22:02 浏览: 84
xlsx-style实现表格下载
以下是一个使用XSSFWorkbook创建下载表格的示例代码:
```
using Microsoft.AspNetCore.Mvc;
using NPOI.XSSF.UserModel;
using System.IO;
public class MyController : Controller
{
[HttpPost]
public IActionResult DownloadExcel()
{
// 创建工作簿
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = (XSSFSheet)workbook.CreateSheet("Sheet1");
// 添加数据
for (int i = 0; i < 10; i++)
{
XSSFRow row = (XSSFRow)sheet.CreateRow(i);
row.CreateCell(0).SetCellValue("Item " + i);
row.CreateCell(1).SetCellValue(i * 2);
}
// 写入文件流并下载
MemoryStream stream = new MemoryStream();
workbook.Write(stream);
byte[] bytes = stream.ToArray();
stream.Close();
return File(bytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "example.xlsx");
}
}
```
在上面的代码中,我们首先创建了一个XSSFWorkbook对象,然后在其中创建了一个名为"Sheet1"的工作表。接下来,我们添加了10行数据,每行包含两列,一列为字符串,另一列为数字。最后,我们将工作簿写入到内存流中,并使用File方法将其作为Excel文件下载到客户端。在File方法中,第一个参数为文件内容的字节数组,第二个参数为MIME类型,第三个参数为文件名。在这个例子中,我们使用了"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"作为MIME类型,表示这是一个Excel文件。
阅读全文