您可以使用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。