使用Coldfusion的SpreadSheet()对象,我创建了一个excel文件,现在用户需要能够下载它。

mySS = SpreadsheetNew();
format1 = StructNew();
format1.color="dark_green";
format1.size="24";
SpreadSheetSetCellValue(mySS, 7,2,3);
SpreadSheetFormatCell(mySS, format1, 2, 3);


本质上我想要

<cfdownload var="#mySS#">


但是,这几乎从来没有那么简单。我意识到可以先写入文件,然后使用cfheader \ cfcontent,但是我尝试避免写入文件(如果可能)。

编辑

根据我从speshak得到的建议

<cfcontent variable="#mySS#"  type="application/msexcel">


我得到的错误是,我是否缺少某些东西?


coldfusion.excel.ExcelInfo不是受支持的变量类型。的
变量应包含二进制数据。

最佳答案

好了,感谢Raymond Camden's Post和speshak,这是最终的解决方案。

<cfheader name="Content-Disposition" value="attachment;filename=filename.xls">
<cfcontent variable="#spreadsheetReadBinary(mySS)#"  type="application/msexcel">

07-25 22:21