在C#中处理不同版本的Excel文件,可以使用Microsoft Office Interop Excel库或者第三方库,例如EPPlus、NPOI等
- 使用Microsoft Office Interop Excel库:
首先,需要安装Microsoft Office Interop Excel库。在Visual Studio中,依次点击“工具”->“NuGet包管理器”->“管理解决方案的NuGet包”,然后搜索并安装“Microsoft.Office.Interop.Excel”。
接下来,可以使用以下代码处理不同版本的Excel文件:
using Microsoft.Office.Interop.Excel;
using System;
using System.IO;
namespace ExcelExample
{
class Program
{
static void Main(string[] args)
{
string filePath = @"C:\path\to\your\excel\file.xlsx"; // 更改为你的Excel文件路径
Application excelApp = new Application();
Workbook workbook = null;
try
{
workbook = excelApp.Workbooks.Open(filePath);
Worksheet worksheet = workbook.Sheets[1]; // 获取第一个工作表
// 读取和操作Excel数据
// ...
workbook.Save(); // 保存更改
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
}
finally
{
if (workbook != null)
{
workbook.Close();
Marshal.ReleaseComObject(workbook);
}
excelApp.Quit();
Marshal.ReleaseComObject(excelApp);
}
}
}
}
- 使用EPPlus库:
首先,需要安装EPPlus库。在Visual Studio中,依次点击“工具”->“NuGet包管理器”->“管理解决方案的NuGet包”,然后搜索并安装“EPPlus”。
接下来,可以使用以下代码处理不同版本的Excel文件:
using OfficeOpenXml;
using System;
using System.IO;
namespace ExcelExample
{
class Program
{
static void Main(string[] args)
{
string filePath = @"C:\path\to\your\excel\file.xlsx"; // 更改为你的Excel文件路径
using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
using (ExcelPackage package = new ExcelPackage(fs))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets[1]; // 获取第一个工作表
// 读取和操作Excel数据
// ...
// 保存更改
package.Save();
}
}
}
}
}
- 使用NPOI库:
首先,需要安装NPOI库。在Visual Studio中,依次点击“工具”->“NuGet包管理器”->“管理解决方案的NuGet包”,然后搜索并安装“NPOI”。
接下来,可以使用以下代码处理不同版本的Excel文件:
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System;
using System.IO;
namespace ExcelExample
{
class Program
{
static void Main(string[] args)
{
string filePath = @"C:\path\to\your\excel\file.xlsx"; // 更改为你的Excel文件路径
using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
IWorkbook workbook = WorkbookFactory.Create(fs);
ISheet sheet = workbook.GetSheetAt(0); // 获取第一个工作表
// 读取和操作Excel数据
// ...
// 保存更改
using (FileStream writeStream = new FileStream(filePath, FileMode.Create, FileAccess.Write))
{
workbook.Write(writeStream);
}
}
}
}
}
这些示例代码展示了如何使用不同的库处理不同版本的Excel文件。根据你的需求和项目环境,可以选择合适的库进行操作。