c#可以使用NPOI来新建一个Excel文档并将datatable的信息写入然后生成在桌面的代码
时间: 2024-03-22 17:41:43 浏览: 127
是的,可以使用NPOI库来实现这个功能。以下是一个示例代码:
```csharp
using System.IO;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System.Data;
public void ExportToExcel(DataTable table)
{
//创建Excel文档对象
XSSFWorkbook workbook = new XSSFWorkbook();
//创建工作表对象
ISheet sheet = workbook.CreateSheet("Sheet1");
//创建表头行对象
IRow headerRow = sheet.CreateRow(0);
//创建表头单元格对象,并赋值
for (int i = 0; i < table.Columns.Count; i++)
{
headerRow.CreateCell(i).SetCellValue(table.Columns[i].ColumnName);
}
//创建数据行对象,并赋值
for (int i = 0; i < table.Rows.Count; i++)
{
IRow dataRow = sheet.CreateRow(i + 1);
for (int j = 0; j < table.Columns.Count; j++)
{
dataRow.CreateCell(j).SetCellValue(table.Rows[i][j].ToString());
}
}
//保存Excel文档到桌面
string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
string filePath = Path.Combine(desktopPath, "data.xlsx");
using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
{
workbook.Write(fs);
}
}
```
调用该方法,传入要导出的DataTable即可生成Excel文档并保存到桌面。需要注意的是,需要在项目中添加对NPOI库的引用。
阅读全文