我正在使用EPPlus编辑现有的Excel文件。它工作得很好但是有趣的是:当我使用EPPlus保存这个文件时,文件的大小是51.0 KB。如果我在编辑后打开同一个文件并手动保存,则文件大小将增加到59.1 KB。
任何人都知道为什么会这样?
有没有办法避免这种行为?
我的意思是,让EPPlus将此文件保存为它的实际大小(59.1 KB)
手动保存此文件或使用EPPlus有什么区别?
我所做的另一个观察是,当我使用EPPlus编辑它后打开此文件时,如果我在手动保存文件后再加载文件需要更多时间。
这是我的代码:
FileInfo file = new FileInfo(@"C:\Desktop\MyExcelFile.xlsx");
using (var package = new ExcelPackage(file))
{
ExcelWorkbook workBook = package.Workbook;
ExcelWorksheet currentWorksheet = workBook.Worksheets.SingleOrDefault(w => w.Name == "MyWorkSheet");
currentWorksheet.Cells[2, 2].Value = "Value1";
currentWorksheet.Cells[3, 2].Value = "Value2";
currentWorksheet.Cells[2, 1].Value = "Value3";
currentWorksheet.Cells[3, 1].Value = "Value4";
package.Save();
}
答案 0 :(得分:0)
那些xlsx文件只是带有xml的压缩目录。如果你想看到它们之间的区别,只需解压缩它们(7zip将起作用),并使用diff工具来比较这两个目录。大小差异将由于excel保存您在工作簿中的最后位置而EEPlus没有,或者xml是如何格式化的。通常,您不应期望EEPlus生成与Excel完全相同的输出。