我们有几个 Golang API 可以为 csvfiles 提供服务,但在提供以编程方式生成的 excel 文件方面没有任何帮助。

为了避免重新编写,我们可以借助此服务器开始。

main.go

这使我们能够服务于路由:/ 和 /excel-download,它们都只支持 GET 方法。

我们在端口 3000 上运行服务器。

当您运行命令 go run main.go 并导航到 127.0.0.1:3000 时,您将使用 homeHandler 路由

homehandler.go

需要注意的是,我们将此服务器设置为通过 HTML 模板专门提供 excel 文件。这很容易成为您 API 中的另一条路由。

templates/home.tmpl

此 HTML 将向用户显示一个简单的下载链接,该链接会将他们定向到我们的 serveExcel 处理程序。

serve_excel.go

所以让我们把它分解成几个部分。

首先,我们使用tealg/xlsx 包来处理excel 文件。这里没有偏好,它似乎是最容易获得工作表和设置单元格的。

这将创建一个 *xlsx.File 类型的新变量,它允许我们添加新工作表并设置单元格。

接下来,我从 0 到 10 循环并将单元格 A1 设置为值“我是一个单元格!

由于bytes.Buffer实现了io.Writer接口,我们可以将其传递给file.Write函数,所有excel数据写入缓冲区

最后,我们设置下载名称,并将数据以 application/octet-stream 的形式流式传输到此服务器。

完成。

详情参阅 - 亚图跨际

使用 Go API 快速下载 excel 文件相关推荐

  1. ASP程序快速生成Excel文件

    ASP程序快速生成Excel文件 在一个web项目中,要求将数据生成Excel文件保存到本地,最早使用的方法是直接使用Microsoft的Office Web组件,但是总体感觉是慢(微软的通病).然后 ...

  2. php通过ajax下载文件,PHP使用ajax的post方式下载excel文件简单示例

    本文实例讲述了PHP使用ajax的post方式下载excel文件.分享给大家供大家参考,具体如下: 项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token ...

  3. VUE项目兼容IE11 遇见的问题 SyntaxError: strict 模式下不允许一个属性有多个定义;ie11下载excel文件需要用navigator.msSaveBlob

    最近要把vue项目兼容ie11 前面引入bable等一系列操作就不说了,下面说一下具体具体的问题 1  如图所示  SyntaxError: strict 模式下不允许一个属性有多个定义, 点击sta ...

  4. 阿里开源(EasyExcel):使用Java将数据导出为Excel表格、带样式----》java web下载 Excel文件

    目录 一.技术选型 二.实现过程 1.导入依赖 2.编写工具类 EasyExcelUtil 3.公用参数类 EasyExcelParams 4.表格样式实体类 MyWriteHandler 5.数据实 ...

  5. react接收后端文件_React获取Java后台文件流并下载Excel文件流程解析

    记录使用blob对象接收java后台文件流并下载为xlsx格式的详细过程,关键部分代码如下. 首先在java后台中设置response中的参数: public void exportExcel(Htt ...

  6. PHP使用ajax的post方式下载excel文件简单示例

    本文实例讲述了PHP使用ajax的post方式下载excel文件.分享给大家供大家参考,具体如下: 项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token ...

  7. java文件流下载excel_React获取Java后台文件流下载Excel文件

    记录使用blob对象接收java后台文件流并下载为xlsx格式的详细过程,关键部分代码如下. 首先在java后台中设置response中的参数: public void exportExcel(Htt ...

  8. IE中点击链接下载EXCEL文件直接以乱码方式打开解决

    我需要在页面上通过javascript控制,点击一个链接下载excel文件模板,总觉得方法都写对了,可每次点击都是新开一个窗口,显示的全是乱码.几日以来一直被这个问题困扰,今天无意中得知这个方法,试了 ...

  9. springboot访问下载/resource/static下的静态资源;下载excel文件损坏,打不开

    放文件 直接把文件放到resource下的static文件夹中 看编译结果 启动之后看看是否被编译了 访问,下载 然后在浏览器输入下面地址就能自动下载文件了 http://localhost:8002 ...

最新文章

  1. Linux软件安装配置Yum源
  2. PMcaff写给大家的年终碎碎念 PMcaff | 记录
  3. Linux Kernel and Android休眠与唤醒
  4. IntelliJ IDEA for Mac在MacOS模式下的版本控制/本地历史记录快捷键(VCS and Local History Shortcut)
  5. Python笔记-uiautomator2截图点击,OpenCV找图
  6. popen和system问题
  7. Eclipse-Git
  8. java thread 线程_Java Thread类简述
  9. github上预览Demo网页最简单的方法
  10. 【数据压缩(十)】H264文件分析2
  11. Maven打包时指定配置文件
  12. 与你一起学习MS Project——基础篇:Project基础应用
  13. SAP FI 系列 007:会计科目主数据维护
  14. mset redis_Redis MSET 命令
  15. 英语单词词性顺口溜_英语单词词性分类
  16. 量化交易中N字型技术形态的实现,天勤,mindgo,python版同花顺,okex,huobi,binance等平台都可正常使用
  17. python tkinter ttk的使用(上)
  18. 分布式搜索引擎es原理
  19. ubuntu登录mysql报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mys
  20. (三)JVM成神路之全面详解执行引擎子系统与JIT即时编译原理

热门文章

  1. 机器人教学:人-机器人互动-理论与应用
  2. 手把手教你如何利用Python薅羊毛(快手极速版)
  3. 北京大兴计算机学校排名2015,北京大兴区小学排名2016
  4. 使用CARLA模拟器实现DQN自动驾驶(二)搭建神经网络
  5. 年入几十万的美国程序员:工资涨不过物价 都不敢叫外卖点奶茶
  6. 4链提币接口通道源码
  7. 系统集成商业务发展的几点认识
  8. 基于sip的语音对讲 Demo
  9. Iceberg(三)对接Flink
  10. urf-8和gb2312文件编码批量相互转换工具