怎么用c#读取excel文件内容

avatar
作者
猴君
阅读量:2

你可以使用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进程正常退出,并释放相关的资源。

希望对你有所帮助!

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!