编写一个财务相关的web应用软件,在某步需要实现对查询的数据进行excel文件生成
现在通过用jxl开源包实现了在本地服务器的文件生成。但是若别的客服端点击生成excel文件的时候,文件还是生成在服务器的硬盘上。
如果才能实现在客服端本地生成相应文件呢?
并且如果才能达到最大的人性化呢?
比如用户可以自己选定文件生成路径
谢谢
现在通过用jxl开源包实现了在本地服务器的文件生成。但是若别的客服端点击生成excel文件的时候,文件还是生成在服务器的硬盘上。
如果才能实现在客服端本地生成相应文件呢?
并且如果才能达到最大的人性化呢?
比如用户可以自己选定文件生成路径
谢谢
直接跑到客户端生成,可能性不大,要么你就可个客户端插件,activex或者applet,这些东西都不建议使用,老老实实在服务器段生成比较好,如果生成信息的数据变动不大,还可以利用缓存提高效率。
response.setContentType(fileminitype);
response.setHeader("Location",filename);
response.setHeader("Cache-Control", "max-age=" + cacheTime);
response.setHeader("Content-Disposition", "attachment; filename=" + filename); //filename应该是编码后的(utf-8)
response.setContentLength(filelength);
OutputStream outputStream = response.getOutputStream();
InputStream inputStream = new FileInputStream(filepath);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();
outputStream = null;