C#中,点击历史记录,保存数据excel中,怎么写
时间: 2023-11-09 16:08:30 浏览: 39
您可以使用以下代码将C#中的数据保存到Excel中:
```csharp
using Excel = Microsoft.Office.Interop.Excel;
// 创建Excel对象
Excel.Application excel = new Excel.Application();
Excel.Workbook workbook = excel.Workbooks.Add(Type.Missing);
Excel.Worksheet worksheet = null;
try
{
// 创建工作表
worksheet = workbook.ActiveSheet;
// 填充数据
for (int i = 0; i < historyList.Count; i++)
{
worksheet.Cells[i + 1, 1] = historyList[i].Name;
worksheet.Cells[i + 1, 2] = historyList[i].Date;
worksheet.Cells[i + 1, 3] = historyList[i].Content;
}
// 保存Excel文件
workbook.SaveAs("history.xlsx", Excel.XlFileFormat.xlOpenXMLWorkbook, Type.Missing,
Type.Missing, false, false, Excel.XlSaveAsAccessMode.xlNoChange,
Excel.XlSaveConflictResolution.xlUserResolution, true, Type.Missing, Type.Missing, Type.Missing);
}
catch (Exception ex)
{
// 处理异常
}
finally
{
// 释放Excel对象
workbook.Close();
excel.Quit();
ReleaseObject(worksheet);
ReleaseObject(workbook);
ReleaseObject(excel);
}
// 释放对象的方法
private void ReleaseObject(object obj)
{
try
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
obj = null;
}
catch (Exception ex)
{
obj = null;
}
finally
{
GC.Collect();
}
}
```
在上面的代码中,`historyList` 是您要保存到Excel中的数据列表。在 `try` 块中,我们首先创建了一个 Excel 对象,然后循环遍历 `historyList` 列表,将每个元素的各个属性值填充到 Excel 工作表中。最后,我们使用工作簿的 `SaveAs` 方法将 Excel 文件保存到指定的文件路径。在 `finally` 块中,我们释放了创建的 Excel 对象。