密码保护文件附加到电子邮件不要求密码

时间:2015-04-08 18:45:21

标签: java email-attachments

如果您需要更多详细信息,请告诉我,因为我不知道应该提供什么帮助。

所以我有一个受密码保护的excel文件,我在我的代码中作为电子邮件附件发送。我用密码保护代码中的文件。当我打开文件时,本地保存的文件要求输入密码。但是当我通过我发出的电子邮件打开文件时,它不会要求输入密码而只是打开它。我在网上搜索但找不到任何东西。

这是我记录文件并发送电子邮件的代码

HSSFWorkbook workbook = new HSSFWorkbook(poi,true);
workbook.writeProtectWorkbook("pass","");
FileOutputStream fo = new FileOutputStream(myExcelFile);

...

Email email = new Email(to, from , subject, body.toString(), true);
email.attachFile(myExcelFile);
email.send();

2 个答案:

答案 0 :(得分:0)

因此,在经过更多测试并询问一些同事之后,我发现电子邮件程序不知道如何处理具有简单密码的文件,因此它只是像正常一样打开文件。如果您下载附件并通过文件系统将其打开,则会提示您输入密码,但如果您只是尝试直接从电子邮件本身(Outlook,Gmail等)打开它,则会忽略密码并打开它了。 我决定做的只是将文件放入zip存档,只需添加密码即可。希望电子邮件程序/应用程序不会忽略它,或者至少当您尝试从存档打开文件时,它会提示您输入密码,因为您不再从电子邮件本身打开它。

长话短说,导致我的问题的电子邮件程序/应用程序不是我的实际代码。

答案 1 :(得分:0)

在遇到类似问题(但使用c#编译并通过电子邮件发送Excel文件)后,我保存工作表,然后保存文件而不是保护工作簿。

当从电子邮件(或任何其他方式)打开文件并尝试编辑单元格时,会显示一个警告,表明该表格受到保护并且只读,直到它不受密码保护。