可是我Workbook转byte[]的时候一直找不到什么好办法,经常报错,求各位高指点,最好有代码~ 在线等,非常急!谢谢
7 个解决方案
#1
saveAs,先存了.再转..转完后Response到客户端,再把存了的文件删掉.
试一下吧.
试一下吧.
#2
如果很多用户都要下载文件,那不是会生成很多临时文件? 然后什么时候再销毁呢? 好麻烦哦,不能把Excel.Workbook对象里的内容变成Byte[]吗?然后Response.Write ?
#3
先把EXCEl里面的内容读出来保存到一个对象里面
下载的时候 就去读取这个对象里面的内容啊
下载的时候 就去读取这个对象里面的内容啊
#4
如果一个sheet的话,就可以生成tab分隔的txt文件,就是excel,直接在内存中输出,如果多sheet的话,你就只能操作excel文件了,麻烦的是不知道用户什么时候下载好,或者按了取消
#5
还有一种思路,获取服务器端数据,客户端生成excel文件
#6
我所生成的文件是某一种打印单据,是有1个画面让用户输入内容,按按钮后后台会去从XML,SQL等地方拿指定数据,然后还要自己画一下边框,设置下单元格的长宽等,这些都不是固定的
本以为可以直接RESOPNSE.WRITE输出流就可以了,谁知道Excel.Workbook对象不可以转流,网上也查了下资料,不知道怎么转了哦。
刚才和群里的朋友交流了下,有的人叫我生成临时文件,然后再做个线程,固定时间去扫,判断每一个临时文件的创建或修改日期是不是大于2分钟? 如果是,就删除,不是就不删除,我觉得这办法不太好。
还有一种是说,让我把EXCEL对象放到DATESET里去,然后把DATESET转成流,然后直接页面输出流文件。
我觉得第2个方法还可以,没生成临时文件,现在也在尝试,请高手们给点意见,最好给点代码,谢谢
本以为可以直接RESOPNSE.WRITE输出流就可以了,谁知道Excel.Workbook对象不可以转流,网上也查了下资料,不知道怎么转了哦。
刚才和群里的朋友交流了下,有的人叫我生成临时文件,然后再做个线程,固定时间去扫,判断每一个临时文件的创建或修改日期是不是大于2分钟? 如果是,就删除,不是就不删除,我觉得这办法不太好。
还有一种是说,让我把EXCEL对象放到DATESET里去,然后把DATESET转成流,然后直接页面输出流文件。
我觉得第2个方法还可以,没生成临时文件,现在也在尝试,请高手们给点意见,最好给点代码,谢谢
#7
生成临时文件,文件名为客户端的ip地址
#1
saveAs,先存了.再转..转完后Response到客户端,再把存了的文件删掉.
试一下吧.
试一下吧.
#2
如果很多用户都要下载文件,那不是会生成很多临时文件? 然后什么时候再销毁呢? 好麻烦哦,不能把Excel.Workbook对象里的内容变成Byte[]吗?然后Response.Write ?
#3
先把EXCEl里面的内容读出来保存到一个对象里面
下载的时候 就去读取这个对象里面的内容啊
下载的时候 就去读取这个对象里面的内容啊
#4
如果一个sheet的话,就可以生成tab分隔的txt文件,就是excel,直接在内存中输出,如果多sheet的话,你就只能操作excel文件了,麻烦的是不知道用户什么时候下载好,或者按了取消
#5
还有一种思路,获取服务器端数据,客户端生成excel文件
#6
我所生成的文件是某一种打印单据,是有1个画面让用户输入内容,按按钮后后台会去从XML,SQL等地方拿指定数据,然后还要自己画一下边框,设置下单元格的长宽等,这些都不是固定的
本以为可以直接RESOPNSE.WRITE输出流就可以了,谁知道Excel.Workbook对象不可以转流,网上也查了下资料,不知道怎么转了哦。
刚才和群里的朋友交流了下,有的人叫我生成临时文件,然后再做个线程,固定时间去扫,判断每一个临时文件的创建或修改日期是不是大于2分钟? 如果是,就删除,不是就不删除,我觉得这办法不太好。
还有一种是说,让我把EXCEL对象放到DATESET里去,然后把DATESET转成流,然后直接页面输出流文件。
我觉得第2个方法还可以,没生成临时文件,现在也在尝试,请高手们给点意见,最好给点代码,谢谢
本以为可以直接RESOPNSE.WRITE输出流就可以了,谁知道Excel.Workbook对象不可以转流,网上也查了下资料,不知道怎么转了哦。
刚才和群里的朋友交流了下,有的人叫我生成临时文件,然后再做个线程,固定时间去扫,判断每一个临时文件的创建或修改日期是不是大于2分钟? 如果是,就删除,不是就不删除,我觉得这办法不太好。
还有一种是说,让我把EXCEL对象放到DATESET里去,然后把DATESET转成流,然后直接页面输出流文件。
我觉得第2个方法还可以,没生成临时文件,现在也在尝试,请高手们给点意见,最好给点代码,谢谢
#7
生成临时文件,文件名为客户端的ip地址