有人知道如何使用package.Saveas函数吗?
package.SaveAs(tempFolderPathAlt + saveas + ".xlsx");
目前,以下错误信息导致该行代码被用红色下划线标记:
The best overloaded method match for 'OfficeOpenXml.ExcelPackage.SaveAs(System.IO.Stream)' has some invalid arguments
目前我是通过以下方式保存文件的。
FileStream aFile = new FileStream(tempFolderPathAlt + saveas + ".xls", FileMode.Create);
byte[] byData = package.GetAsByteArray();
aFile.Seek(0, SeekOrigin.Begin);
aFile.Write(byData, 0, byData.Length);
aFile.Close();
但是这种方式会导致文件包保持打开状态,我无法使用其中的文件。
使用“另存为”可以正确关闭文件包,但它不能接受我的文件路径。
编辑
我尝试了这个:
using (FileStream aFile = new FileStream(tempFolderPathAlt + saveas + ".xlsx", FileMode.Create))
{
byte[] byData = package.GetAsByteArray();
aFile.Seek(0, SeekOrigin.Begin);
package.SaveAs(aFile);
//aFile.Write(byData, 0, byData.Length);
aFile.Close();
}
但是你遇到了以下错误?
包对象已关闭并释放,因此无法对该对象或在该包的任何流上打开的部分执行操作。