密码保护 Excel 使用 EPPLUS 下载
Password Protected Excel Download using EPPLUS
我正在使用 EPPLUS Excel 库以 Excel 格式导出数据。我希望 excel 下载时会要求输入密码。我尝试了以下代码。
FileInfo newFile = new FileInfo("sample.xlsx");
using (ExcelPackage package = new ExcelPackage(newFile)
{
ExcelWorksheet ws = package.Workbook.Worksheets.Add("demo");
ws.Cells[A1].LoadFromDataTable(dataTable, false);
package.Workbook.Protection.SetPassword("EPPLUS");
package.Save();
}
只需要使用带密码的 .Save
重载作为选项:
package.Save("password");
回复评论
如果通过 byte
数组保存则应用密码非常相似:
Byte[] bin = pck.GetAsByteArray("password");
System.IO.File.WriteAllBytes(fullFilePath, bin);
没有记录,但您可以按照以下步骤操作:
package.Encryption.Password = "your password here";
然后用您选择的 Save()
或 GetAsByteArray()
送达您的包裹
如果您要将 excel 包保存到 MemoryStream 中(以作为电子邮件附件发送),您必须这样做:
excelPackage.SaveAs(memoryStream, "pa$$w0rd");
package.GetAsByteArray("sometest"); ---> 这将保护您的 excel sheet 密码 sometest :)
我正在使用 EPPLUS Excel 库以 Excel 格式导出数据。我希望 excel 下载时会要求输入密码。我尝试了以下代码。
FileInfo newFile = new FileInfo("sample.xlsx");
using (ExcelPackage package = new ExcelPackage(newFile)
{
ExcelWorksheet ws = package.Workbook.Worksheets.Add("demo");
ws.Cells[A1].LoadFromDataTable(dataTable, false);
package.Workbook.Protection.SetPassword("EPPLUS");
package.Save();
}
只需要使用带密码的 .Save
重载作为选项:
package.Save("password");
回复评论
如果通过 byte
数组保存则应用密码非常相似:
Byte[] bin = pck.GetAsByteArray("password");
System.IO.File.WriteAllBytes(fullFilePath, bin);
没有记录,但您可以按照以下步骤操作:
package.Encryption.Password = "your password here";
然后用您选择的 Save()
或 GetAsByteArray()
送达您的包裹
如果您要将 excel 包保存到 MemoryStream 中(以作为电子邮件附件发送),您必须这样做:
excelPackage.SaveAs(memoryStream, "pa$$w0rd");
package.GetAsByteArray("sometest"); ---> 这将保护您的 excel sheet 密码 sometest :)