你可以使用Microsoft.Office.Interop.Excel命名空间下的Excel对象来读取Excel文件内容。
首先,你需要在项目中引用Microsoft.Office.Interop.Excel库。这可以通过在解决方案资源管理器中,右键单击“引用”并选择“添加引用”,然后在“COM”选项卡下找到“Microsoft Excel XX.X Object Library”。
接下来,你可以使用以下代码来读取Excel文件内容:
using Excel = Microsoft.Office.Interop.Excel;
public void ReadExcel(string filePath)
{
Excel.Application excelApp = new Excel.Application();
Excel.Workbook workbook = excelApp.Workbooks.Open(filePath);
Excel.Worksheet worksheet = workbook.Sheets[1]; // 选择第一个工作表
int rowCount = worksheet.UsedRange.Rows.Count;
int colCount = worksheet.UsedRange.Columns.Count;
for (int row = 1; row <= rowCount; row++)
{
for (int col = 1; col <= colCount; col++)
{
Excel.Range range = (Excel.Range)worksheet.Cells[row, col];
string cellValue = range.Value2.ToString();
Console.WriteLine(cellValue);
}
}
workbook.Close();
excelApp.Quit();
}
在上面的代码中,filePath
是Excel文件的路径。首先,创建一个Excel应用程序对象(excelApp
),然后打开Excel文件(workbook
)。接下来,选择要读取的工作表(worksheet
),并获取工作表中使用的行数和列数。然后,使用嵌套的循环遍历每个单元格,并将单元格的值打印到控制台。最后,关闭工作簿和Excel应用程序对象。
请注意,为了正确释放COM对象,在使用完Excel对象后,应调用Marshal.ReleaseComObject
方法来释放对应的资源。例如,在关闭工作簿之后,可以添加以下代码:
Marshal.ReleaseComObject(worksheet);
Marshal.ReleaseComObject(workbook);
Marshal.ReleaseComObject(excelApp);
这样可以确保在代码执行完毕后,Excel进程正常退出,并释放相关的资源。
希望对你有所帮助!
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: C#怎么实现CSV文件读写