Java编程

导航菜单



当前位置: 首页  /  Java基础  /  正文

解决文件流导出为Excel无法打开的问题

阅读:3

解决文件流导出为Excel无法打开的问题

responseType: "arraybuffer" 是关键

export function filePost(url, params, config) {
    let userAuth = JSON.parse(sessionStorage.getItem("userAuth"));
    return new Promise((resolve, reject) => {
        axios.create({
            baseURL: baseUrl,
            timeout: 15000,
            headers: {
                "Content-Type": "application/json-patch+json",
                "Authorization": userAuth.token_type + " " + userAuth.access_token,
            },
            responseType: "arraybuffer" //必须设置,不然导出的文件无法打开
        })
            .post(url, params, config)
            .then(res => {
                resolve(res);
            })
            .catch(err => {
                reject(err);
            });
    });
}

导出接口:​​

  const exportExl = () => {
    store
      .exportExl({
        shop: 'shopNumber,shopName,road,shopAddress',
        shopNumber: 'S000075,S000002,S000077',
      })
      .then((res) => {
        const blob = new Blob([res], {
          type: 'application/vnd.ms-excel;charset=utf-8',
        })
        const fileName = '部队信息.xlsx'
        const elink = document.createElement('a')
        elink.download = fileName
        elink.style.display = 'none'
        elink.href = URL.createObjectURL(blob)
        document.body.appendChild(elink)
        elink.click()
        URL.revokeObjectURL(elink.href) // 释放URL 对象
        document.body.removeChild(elink)
      })
  }

标签

文件导出excel打开问题


相关文章列表

如何导出多个excel文件:简单易懂的导出教程 - SEO技巧

如何导出多个excel文件:简单易懂的导出教程 - SEO技巧

1、场景 数据量太大,excel单个sheet装不下,或者觉得慢——当然可以导出成txt,可是有些时候就被要求一定要是excel2、模板 3、依赖的jar参考前面的文章:java使用poi操作exce...


优化java百万级别excel导出,解决导出慢和内存溢出问题

优化java百万级别excel导出,解决导出慢和内存溢出问题

目录业务场景原因分析解决思路优化后效果实现代码DEMO业务场景由于很多业务需要导出数据库里的数据,一般我们导出的数据都是要给业务部门看的,他们也会拿到做一些数据统计,所以一般都是给他们导出Excel格...


使用Java Poi库实现Excel文件加密、导出和下载功能

使用Java Poi库实现Excel文件加密、导出和下载功能

最终结果图poi依赖jar包 org.apache.poi poi 3...


Java实现简单易用的Excel文件读写,导出和下载Excel文件案例

Java实现简单易用的Excel文件读写,导出和下载Excel文件案例

EasyExcel组件EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址:https://github....


Java文件导出Excel的通用方法

Java文件导出Excel的通用方法

文件导出Excel 的时候,比较繁琐,如果有大量的文件导出,必然出现重复代码,这样我们就需要一个公共方法。下面写的一个工具类:package com.teamnavi.zstrade.common.u...


Java实战:使用POI和模板导出Excel文件,快速设置Sheet样式!

Java实战:使用POI和模板导出Excel文件,快速设置Sheet样式!

Apache POIPOI为【Poor Obfuscation Implementation】的首字母缩写,意为【可怜的模糊实现】。Java程序对Microsoft Office格式档案读和写的功能。...


友情链接