flask提供了send_from_directory方法来下载文件,使用很方便,但是在下载的文件名中包含中文就会出问题。
修改之前的代码:

send_from_directory(dir_path, file_name, as_attachment=True,attachment_filename="中文名.xlsx")
# dir_path: 要下载的文件的文件夹
# file_name: 要下载的文件名
# attachment_filename:下载之后的文件名 即浏览器下载的时候展示的文件名

如果不对attachment_filename的值做处理的话,浏览器会识别不出来中文,下载的文件名不对

处理之后的代码:

from urllib.parse import quotedownload_file_name = "试卷分析-{}.xlsx"
download_file_name = quote(download_file_name)rv = send_from_directory(dir_path, file_name, as_attachment=True,
attachment_filename=download_file_name)rv.headers['Content-Disposition'] = "; filename*=utf-8''%s" % (download_file_name)

这样下载到本地的文件名就是attachment_filename指定的文件名了

flask下载excel文件相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

  7. iOS 打开本地或下载excel文件

    打开本地或下载excel文件 1.用webView打开 - (UIWebView *)webView{if (!_webView) {_webView = [[UIWebView alloc] ini ...

  8. 安卓无法下载excel文件

    苹果,pc都可以进行下载excel文件.但是安卓一直报错 解决办法:后缀问题.xls换成xlsx解决. 具体原因:不知道...

  9. c #点击按钮下载excel文件

    c #点击按钮下载excel文件 前端代码省去了,button属性οnclick="excel" public void excel(object sender, EventArg ...

最新文章

  1. Java版的开源 Flappy Bird 复刻项目
  2. 51 NOD 1227 平均最小公倍数(杜教筛)
  3. 原来C语言还可以这样实现“泛型编程”!
  4. Star Schema完全参考手册读书笔记一
  5. 职友集 进化者机器人_麦克风解决方案将发掘交互式机器人的无限潜力
  6. React Native按钮详解|Touchable系列组件使用详解
  7. 【机房收费系统】---导出Excel表
  8. fail to build phoneME Feature-转
  9. easyUI 之datagrid 在前端自定义排序
  10. 前端学习笔记day14 移动盒子 封装函数
  11. 相关滤波跟踪·MOSSE算法的梳理
  12. 【时间序列分析】01. 时间序列·平稳序列
  13. 2023年计算机专业毕业设计选题有哪些?(附源码)
  14. MSSQL · 实现分析 · SQL Server实现审计日志的方案探索
  15. 高仿精仿微信客户端源码完整版
  16. 快手投放:快手电商留存分析
  17. 94608000秒,1576800分,26280小时,1095天!!
  18. 转换器SherbendGeneralizer示例
  19. vue兼容IE8以上解决方案
  20. 前端新宠 Svelte 带来哪些新思想?赶紧学起来!

热门文章

  1. 通常情况下,我们每天花一两个小时学习建站,一个月左右就能掌握一种简单开源程序建站
  2. v19.04 鸿蒙内核源码分析(位图管理) | 特节俭的苦命孩子 | 百篇博客分析HarmonyOS源码
  3. 献给我所有结婚或即将结婚的亲人朋友们
  4. presto 中的 substr 函数 与 Hive中的 substr 函数用法不同
  5. xp系统打印机服务器不可用,WinXP系统添加打印机操作无法完成如何解决?
  6. 深度特写|那些想破解苹果FaceID的顶级黑客,失败了!
  7. 3D游戏 第三次作业
  8. 彩色打印输出文本(echo,grep,perl)
  9. android开发之网络棋牌类在线游戏开发心得(服务器端、Java)
  10. 微信守护者(自动情感分析、提醒、节日、生日问候)