通过 Domino Java 代理,我使用 Apache POI 生成 Excel 电子表格。该代码首先将文件保存到驱动器;我已经验证我可以在那里打开该文件并且该文件包含信息。但是,当我通过 MIME 将其附加到电子邮件时,我收到一条消息,指出“Excel 无法打开文件电子表格.xlxs”和“文件格式或文件扩展名无效”。
这是我正在使用的代码:
MIMEEntity ebody = maildoc.createMIMEEntity();
Stream outStream = session.createStream();
Stream inStream = session.createStream();
inStream.open(entry.getValue(),"binary");
do {
byte[] buffer = inStream.read(32767);
outStream.write(buffer);
} while(!inStream.isEOS());
inStream.close();
MIMEEntity child = ebody.createChildEntity();
child.setContentFromBytes(outStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", MIMEEntity.ENC_IDENTITY_BINARY);
MIMEHeader cdHeader = child.createHeader("Content-Disposition");
cdHeader.setHeaderVal("attachment; filename="spreadsheet.xlxs");
MIMEHeader idHeader = child.createHeader("Content-ID");
idHeader.setHeaderVal("spreadsheet.xlxs");
outStream.truncate();
outStream.close();
有什么想法我哪里出错了吗?
最佳答案
xlsx,不是 xlxs。你有一个错字。
关于java - 无法打开流式文件附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25536165/