我是靠谱客的博主 健忘巨人,最近开发中收集的这篇文章主要介绍ajax response 导出文件,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前段
form隐藏域
<form id="form" style="display: none">
</form>
$.ajax({
url: createTxt/Excel, -- 在服务端生成文件
type:"POST",
async: false,
data:{data:queryData},
success: function (text) {
mini.unmask();
var result=mini.decode(text);
if(result.data.code =='0'){
expAjax(result.data.filePath,result.data.fileName);
}else{
mini.alert("导出出现异常");
return false;
}
},error:function(e){
mini.unmask();
mini.alert("导出出现异常。");
}
});
function expAjax(pathWj, wjmc) {
var param = '?pathWj=' + pathWj + '&wjmc=' + wjmc;
var form = $("#form"); //form表单
form.attr('target', '');
form.attr('method', 'post');
form.attr('action', downTxt/Excel + param);
form.submit(); //表单提交
}

@RequestMapping(value = "/downTxt/Excel ", method = RequestMethod.POST)
@ResponseBody
public ResultDTO downTxt/Excel (HttpServletRequest request,
HttpServletResponse response) {
ResultDTO dao = new ResultDTO();
try {
String pathWj = request.getParameter("pathWj");
String wjmc = request.getParameter("wjmc");
byte[] b1 = readFileByBytes(pathWj);
response.addHeader("Content-Disposition",
"attachment;filename=" + wjmc + ".xls");  --这里的文件名称要和生成的文件名称保持一致,不然下载不成功
response.setContentType("application/x-download");
response.getOutputStream().write(b1);
File file = new File(pathWj );
file.delete();
dao.setMessage("文件导出成功。");
} catch (Exception e) {
LOG.info("mesg", e);
dao.setMessage("导出失败。");
}

return dao;
}

public byte[] readFileByBytes(String fileName) {
InputStream in = null;
ByteArrayOutputStream out = new ByteArrayOutputStream();
try {
in = new FileInputStream(fileName);
byte[] buf = new byte[1024];
int length = 0;
while ((length = in.read(buf)) != -1) {
out.write(buf, 0, length);
}
} catch (Exception e1) {
LOG.error("导出异常:" + e1.getMessage(), e1);
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e1) {
LOG.error(e1.getMessage(), e1);
}
}
}
return out.toByteArray();
}


最后

以上就是健忘巨人为你收集整理的ajax response 导出文件的全部内容,希望文章能够帮你解决ajax response 导出文件所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部