js导出的xlsx无法打开_angular.js,springmvc_springMVC导出POI的excel,angularjs接收,但是excel打不开xlsx,angular.js,spring...

springMVC导出POI的excel,angularjs接收,但是excel打不开xlsx

js导出方法:

$scope.showYes = function () {

var needFields = getTheNeedFields();

$http.post("/aa.do?fields="+needFields, {responseType: 'arraybuffer'}).then(function (response) {

var data = new Blob([response.data], {type: response.headers('Content-Type')});

var filename = response.headers('Content-Disposition').split(';')[1].trim().substr('filename='.length);

FileSaver.saveAs(data, filename);

});

};

服务端处理方法:

@RequestMapping("/aa")

public void testExportDynamic(HttpServletResponse response) throws IOException {

String fileName = System.currentTimeMillis()+"";

response.setCharacterEncoding("UTF-8");

response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8");

response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(fileName, "utf-8")+ ".xlsx");

OutputStream os = response.getOutputStream();

Map map = new HashMap();

String fields = request.getParameter("fields");

map.put("fields", fields);

//Map对象,带null的对象

List result = userDao.loadDatasBySelectionFields(map);

XSSFWorkbook workbook = MehtodApis.exportExcelFile(result, fields);

// OutputStream os = new FileOutputStream("D:/export2007_" + System.currentTimeMillis() + ".xlsx");

//

workbook.write(os);

os.close();

}

但是下载的文件是这样的:

控制台:

如果我用这种输出的excel到觉得路径下,文件是没问题的。

Map map = new HashMap();

String fields = request.getParameter("fields");

map.put("fields", fields);

//Map对象,带null的对象

List result = userDao.loadDatasBySelectionFields(map);

XSSFWorkbook workbook = MehtodApis.exportExcelFile(result, fields);

OutputStream os = new FileOutputStream("D:/export2007_" + System.currentTimeMillis() + ".xlsx");

workbook.write(os);

os.close();

神马问题呢?怎么处理好呢?

相关阅读:

关于js,通过实例来继承的原型链问题.

php 响应 ajax 的时候,怎么返回 json 对象呢?我这样对吗?

java 对象转json字符串忽略类型,所有值都加上双引号,如何做?我用的是fastjson。

如何在 webpack构建时 去掉 hmr (热加载)

javascript运行里边的挂起是什意思?

http://codepen.io/anon/pen/kkxELE

raspbian 下 Transmission-daemon 不能随开机正常自启,如何解决?

oss和普通图床有什么区别?

站點雙語言建議?

JspWriter与ServletOutputstream在JSP页面冲突处理方式

用WAMP搭建两个站点如何实现

js语法错误

mysql 非主键做范围查找实现原理的一点困惑

Node 层如何管理日志记录

想做一个微信公众号 本地环境改怎么搭建?

選擇器選擇某一個option後再出現一個選擇器?

微信小程序不能操作dom吗?

fileReader上传的图片如何从服务器再下载到特定位置

小程序wx.getUserInfo 中的 encryptData 解密

关于使用angular使用正则或者其他方式如何获取到某一段文本中指定的字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值