我使用 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();
}
答案 0 :(得分:15)
只需使用.Save
重载并使用密码作为选项:
package.Save("password");
回复评论
如果通过byte
数组保存,则应用密码非常相似:
Byte[] bin = pck.GetAsByteArray("password");
System.IO.File.WriteAllBytes(fullFilePath, bin);
答案 1 :(得分:2)
没有记录,但你可以这样做:
package.Encryption.Password = "your password here";
然后使用您选择的Save()
或GetAsByteArray()
答案 2 :(得分:0)
如果要将excel包保存到MemoryStream中(作为电子邮件附件发送),则必须执行以下操作:
excelPackage.SaveAs(memoryStream, "pa$$w0rd");
答案 3 :(得分:0)
package.GetAsByteArray(“ sometest”); --->这样可以使用sometest密码保护您的excel工作表:)