可以使用SaveCopyAs()方法,先将文件保存到一个临时文件中,然后再将临时文件改名为原文件名,这样就可以实现覆盖同名文件的功能。以下是示例代码:

using Excel = Microsoft.Office.Interop.Excel;

Excel.Application excelApp = new Excel.Application();
Excel.Workbook workbook = excelApp.Workbooks.Add();
Excel.Worksheet worksheet = workbook.ActiveSheet;

// 在工作表中添加数据

string fileName = "Sample.xlsx";

// 保存文件,如果有同名文件则覆盖
string tempFileName = "temp-" + fileName;
workbook.SaveCopyAs(tempFileName);
File.Delete(fileName);
File.Move(tempFileName, fileName);

workbook.Close();
excelApp.Quit();

在上面的代码中,我们使用了File类的Delete()和Move()方法,分别用于删除原文件和将临时文件改名为原文件名

C# 创建excel文件 SaveAs时有同名文件直接覆盖

原文地址: https://www.cveoy.top/t/topic/hvG9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录