无法打开流式文件附件
Posted
技术标签:
【中文标题】无法打开流式文件附件【英文标题】:Cannot Open Streamed File Attachment 【发布时间】:2014-10-21 13:40:49 【问题描述】:通过 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();
任何想法我哪里出错了?
【问题讨论】:
【参考方案1】:xlsx,不是 xlxs。你有一个错字。
【讨论】:
以上是关于无法打开流式文件附件的主要内容,如果未能解决你的问题,请参考以下文章
Adobe Acrobat 无法打开文件附件,因为您的PDF文件附件设置不允许打开本类型的文件
Adobe Acrobat 无法打开文件附件,因为您的PDF文件附件设置不允许打开本类型的文件
Adobe Acrobat 无法打开文件附件,因为您的PDF文件附件设置不允许打开本类型的文件