温馨提示×

c# office如何读取Excel数据

c#
小樊
157
2024-07-26 20:01:12
栏目: 编程语言

您可以使用C#中的Office Interop来读取Excel数据。以下是一些示例代码,演示如何使用Office Interop来读取Excel数据:

using Excel = Microsoft.Office.Interop.Excel;

public void ReadExcelData(string filePath)
{
    Excel.Application excelApp = new Excel.Application();
    Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(filePath);
    Excel.Worksheet excelWorksheet = excelWorkbook.Sheets[1];
    Excel.Range excelRange = excelWorksheet.UsedRange;

    int rowCount = excelRange.Rows.Count;
    int colCount = excelRange.Columns.Count;

    for (int i = 1; i <= rowCount; i++)
    {
        for (int j = 1; j <= colCount; j++)
        {
            string cellValue = excelRange.Cells[i, j].Value2.ToString();
            Console.WriteLine(cellValue);
        }
    }

    excelWorkbook.Close();
    excelApp.Quit();

    releaseObject(excelRange);
    releaseObject(excelWorksheet);
    releaseObject(excelWorkbook);
    releaseObject(excelApp);
}

private void releaseObject(object obj)
{
    try
    {
        System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
        obj = null;
    }
    catch (Exception ex)
    {
        obj = null;
        Console.WriteLine("Exception Occurred while releasing object " + ex.ToString());
    }
    finally
    {
        GC.Collect();
    }
}

在这个示例中,ReadExcelData方法打开一个Excel文件,并读取第一个工作表的数据。然后,它遍历每个单元格并将其值打印到控制台。最后,记得在完成操作后释放Excel对象,以避免内存泄漏。

请注意,使用Office Interop可能会导致一些性能问题和不稳定性,因为它依赖于安装了相应的Office应用程序。如果您要处理大量数据或需要更高性能和更稳定的解决方案,您可能需要考虑使用第三方库,如EPPlus或NPOI。

0