django 下载文件
2024-10-15 03:54:24
方法一、
from django.http import StreamingHttpResponse def big_file_download(request): # do something... def file_iterator(file_name, chunk_size=512): with open(file_name) as f: while True: c = f.read(chunk_size) if c: yield c else: break the_file_name = "file_name.txt" response = StreamingHttpResponse(file_iterator(the_file_name)) return response
方法二、
csv格式
#urls.py url(r'download/(?P<FILE>.*)$', views.DownLoadView.as_view(), name='download'), #views.py class DownLoadView(View): def get(self, request, FILE): file_path = STATICFILES_DIRS[0] +"/"+FILE response = HttpResponse(content_type="text/csv") response['Content-Disposition'] = 'attachment; filename=%s' %FILE response['Content-Length'] = os.path.getsize(file_path) data = csv.reader(file(file_path, 'rb')) writer = csv.writer(response) for item in data: writer.writerow(item) return response
方法三、
#urls.py url(r'loadkml/(.*)$', 'django.views.static.serve', {'document_root':settings.DOWNLOAD_DIR}, name='loadkml'), #settings.py DOWNLOAD_DIR = os.path.join(BASE_DIR, "data").replace('\\', '/')
最新文章
- Xshell远程连接工具
- ip封包
- Java问题:Quartz,Hibernate,Spring,Tomcat中定时任务无故停止,没有错误
- BZOJ 1502 月下柠檬树(simpson积分)
- Content-Type
- os4开始CLLocationManager类中不支持locationServicesEnabled属性了
- ERROR 1045: Access denied for user: &#39;root@localhost&#39; (Using password: YES)(转)
- 三种C#.net生成静态页面的方法
- MySQL事务处理2
- 两种mysql文件安装方式——win7 32位OS
- 【开源】C#.NET股票历史数据采集,【附18年历史数据和源代码】
- Java开发笔记(四十)日期与字符串的互相转换
- 不一样的ssm
- Swift get和set方法以及只读属性(计算型属性,本身不保存数据,都是通过计算获得结果)
- Hibernate的查询功能
- 前端js 省市联动
- PHP文件上传与下载
- 20145315 《Java程序设计》第四周学习总结
- MSP430G2553 Launchpad 硬件I2C驱动
- Servlet映射规范和隐式映射
热门文章
- [Jenkins]Jenkins构建时提示java.io.IOException: No space left on device
- [Web安全之实战] 跨站脚本攻击XSS
- Disconf源码分析之启动过程分析上(1)
- spring boot多数据源配置(mysql,redis,mongodb)实战
- MyBatis源码解析(一)——执行流程
- date、sleep和usleep命令
- Resource Agent:LSB和OCF
- jQuery根据元素值或元素下标来删除一个数组元素及数组对象方法列表
- PHP Warning: PHP Startup: redis: Unable to initialize module Windows版本phpredis扩展
- Python mysql 创建连接