简介

需求:
需要在请求时,将数据生成zip文件提供给用户下载。

不想要在生成后再提供给用户下载

解决:
使用BytesIO在内存中写入数据,而不是落地到本地中。

栗子


from io import BytesIO
import zipfile
from django.http import FileResponsedef view():download_io = BytesIO()with zipfile.ZipFile(pb_zip_io, "w", zipfile.ZIP_DEFLATED) as zip_fp:zip_fp.open("a.txt", "w") as f:f.write("hello world")# 注意,需要要将指针指向内存的开始位置download_io.seek(0)return FileResponse(download_io, as_attachment=True, filename="a.zip")

欢迎关注,互相学习,共同进步~

我的个人博客

我的微信公众号:编程黑洞

django 压缩文件下载相关推荐

  1. php压缩文件下载后损坏,php下载压缩文件

    压缩文件是正常的,但是下载到本地就提示损坏,打不开,但是随便创建一个压缩文件下载又是正常的 $froot = dirname($_SERVER['DOCUMENT_ROOT']) . '/upzip/ ...

  2. Python Django 搭建文件下载服务器

    本文仅供学习交流使用,如侵立删!demo下载见文末 Python Django 搭建文件下载服务器 环境 win10 Python:3.6.7 Django:2.2.7 运行效果 1.创建 Djang ...

  3. Django的文件下载

    在实际的项目中很多时候需要用到下载功能,如导excel.pdf或者文件下载,当然你可以使用web服务自己搭建可以用于下载的资源服务器,如nginx,这里我们主要介绍django中的文件下载. 我们这里 ...

  4. Python/Django 大文件下载问题

    最近使用Python/Django开发一个系统,暂且称之为A系统,卡在大文件下载上面,查询了django官方doc和stackoverflow上的很多资料,最终圆满解决此问题,如下为具体过程: 一 A ...

  5. 基于SpringBoot实现后端压缩文件下载输出到前端

    下载压缩文件和下载其他文件的写法是一样的因为都是操作的字节流,通过IO流实现先将文件读取出来,然后再输出到浏览器. @RestController public class DownloadContr ...

  6. .netcore+vue 实现压缩文件下载

    一.前言 目前接触的项目中,给定的需求是将系统内所有用户的数据整理好,并保存到文件夹内,目的主要是防止用户在实施人员已配置好的基础上由于不熟悉系统,导致的误删或者误操作.减少实施人员的配置工作.我首先 ...

  7. python实现文件下载-Python+django实现文件下载

    (1)方法一.直接用a标签的href+数据库中文件地址,即可下载.缺点:word excel是直接弹框下载,对于image txt 等文件的下载方式是直接在新页面打开. (2)方法二.在python后 ...

  8. java生成excel/zip压缩文件下载

    生成单表并下载 excel工具包 <!-- excel工具 --><dependency><groupId>org.apache.poi</groupId&g ...

  9. php压缩文件下载后损坏,PHP ZipArchive在Windows中损坏

    我正在使用PHP的ZipArchive类来创建一个包含照片的zip文件,然后将其提供给浏览器进行下载.这是我的代码: /** * Grabs the order, packages the files ...

最新文章

  1. 2021年大数据HBase(十三):HBase读取和存储数据的流程
  2. 用js操作table、tr、td 「字体样式及TD背景图片」
  3. 回文子串—leetcode647
  4. Android Native C Log
  5. 10.11.5 brew mysql_mac os10.11下安装MySQLdb
  6. android版本管理工具下载,apk应用管理app下载
  7. linux编程创建文件,快速创建linux文件
  8. 利用信鸽推送实现登录后强制退出的功能
  9. 中国最美的100首情诗
  10. ES 创建太多 buckets 错误: trying to create too many buckets. must be less than or equal to: [100000] but w
  11. 8086 CPU 内部结构
  12. “D语言风采不再”的说法言过其实
  13. Android远程真机调试(电脑使用 Vysor 控制手机)
  14. 【CSS如何画简单的三角形或者梯形】
  15. 两步验证 非双重认证
  16. 大时代已过,小机会可期
  17. 牛客题库—软件测试(一)
  18. Jumpserver堡垒机部署(完整过程)
  19. 【Python】输入输出(11)
  20. 通过UC开发者调试工具调试webView

热门文章

  1. LiveGBS流媒体平台GB/T28181功能-支持GB35114接入海康大华华为设备通过GB35114国标流媒体平台
  2. pyqt5 QPainter绘制图形,并旋转
  3. Visual Studio 2005 下载地址 V8各种版本官方下载网址
  4. Django的视图View详解
  5. python气象学_Python气象绘图教程(二)
  6. 面试官问你斐波那契数列的时候不要高兴得太早 搞懂C语言函数指针 搜索引擎还可以这么玩? 那些相见恨晚的搜索技巧...
  7. PostgreSQL最后的救命稻草 — pg_resetwal
  8. java list 转json对象_JSON--List集合转换成JSON对象
  9. koolcenter官改固件软件中心无法离线安装插件
  10. Adobe illustrator插件开发-坐标系统-AIHardSoftSuite-画板坐标-页面坐标-AI插件开发