27. 生成CSV文件
CSV(Comma-Separated Values)文件中文件字符分隔值,CSV文件以纯文本形式存储表格数据(数字和文本),可以被常见制表工具(excel等)直接读取
目录
1 生成CSV
2 结合django使用csv
2.1 方案1
2.2 方案2
3 分页配合csv文件
1 生成CSV
我们使用python内建的csv库来操作csv文件
- open生成CSV文件必须有newline且newline必须是空字符串
- writerow()调用一次就会写一行
运行后在代码的同级目录中会出现生成的csv文件
打开后发现与我们输入的内容一致
writerow()的参数只要是一个列表就行,所以我们可以使用查询数据的结果生成csv文件,我下面会用数据表做例子
2 结合django使用csv
目的都是搞一个路由,然后访问这个路由就可以得到生成的csv文件
2.1 方案1
生成放static中,然后302到static就能下载了
路由
视图
之后我们访问download_csv1
- 由于302到static,所以地址栏不会显示download_csv1
打开下载好的test.csv,发现其中是我们需要的内容
2.2 方案2
方案二对响应做出一些修改
- 修改content_type,告知浏览器该文档是CSV文件,而不是HTML文件
- 修改Content-Disposition,告知浏览器有附件,响应后需要保存
csv.writer()的参数为csv文档对象,此时response就是一个csv文档对象,所以可以放在csv.writer()中
之后我们搞一个路由
然后访问一下
效果与方案一相同
点开后发现是我们想要的数据
方案二相较于方案一不需要使用static,也不需要特意搞路由
3 分页配合csv文件
有时会有下载当前页内容的需求,我们使用之前的分页来搞一下
搞一个下载每页CSV的视图
再搞一个路由
最后在分页的html中加入一个a标签
- 链接地址一定要给查询字符串
之后我们访问一下分页的路由,然后点击下载该页信息
打开后发现符合要求
27. 生成CSV文件相关推荐
- 数据库抽取,生成CSV文件导出,CSVUtils工具类
2019独角兽企业重金招聘Python工程师标准>>> 开发背景: 最近一直在忙一个任务调度系统,需求一直没定下来,需求一直变更,调度一直改,往往复复... 等这波忙完了可以写一下关 ...
- Java生成CSV文件
1.新CSVUtils.java文件: package com.saicfc.pmpf.internal.manage.utils;import java.io.BufferedWriter; imp ...
- POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解...
http://blog.csdn.net/l081307114/article/details/46009015 http://www.cnblogs.com/dreammyle/p/5458280. ...
- java将数据生成csv文件
1,httpRequest接口触发进程[或者可以换成其他方式触发] /** * 出入库生成CSV文件 * @param req * @param params * @return */@Request ...
- 在 Apex 代码中生成 csv 文件
在 Apex 代码中生成 csv 文件可以写一个 Visualforce 页面,设定类型为 excel 的格式,然后调用 PageReference 的 getContent()方法来获取 Blob ...
- java导出csv文件_java导出生成csv文件的方法
本文实例为大家分享了java导出生成csv文件的具体代码,供大家参考,具体内容如下 首先我们需要对csv文件有基础的认识,csv文件类似excel,可以使用excel打开,但是csv文件的本质是逗号分 ...
- Python生成CSV文件模拟某小区用户手机通话记录
好消息:"Python小屋"编程比赛正式开始 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社, ...
- csv文件 java_Java生成CSV文件实例详解
本文实例主要讲述了Java生成CSV文件的方法,具体实现步骤如下: 1.新建CSVUtils.java文件: package com.saicfc.pmpf.internal.manage.utils ...
- java 生成csv文件_Java生成CSV文件实例详解
本文实例主要讲述了java生成csv文件的方法,具体实现步骤如下: 1.新建csvutils.java文件: package com.saicfc.pmpf.internal.manage.utils ...
最新文章
- Maven多工程的创建
- JDBC连接执行MySQL存储过程报空指针或权限错误
- 【2011.9.20】Spring配置文件总结
- 澳大利亚量子计算机获突破 首次实现简化逻辑门
- python中二维列表的遍历方式(亲测)
- 银行不是很喜欢客户分期吗?为何申请信用卡分期被拒绝了?
- 揭秘“清华园”的“N”种打开方式!
- 【ElasticSearch】Es 源码之 CcrRestoreSourceService 源码解读
- 开环直流电机的机械特性_无刷直流电动机的开环调速机械特性研究
- arduino loar_如何使用Arduino开发板制作函数生成器(波形发生器)
- L255 Learning to say no brings a thrill of freedom
- [git] gnutls_handshake() failed
- 一键安装thrift-0.9.0的脚本
- 开源跨平台GUI库Fltk在Deepin Linux下的使用
- 数据库课程设计专题-数据库课程设计大作业作业列表【建议在校生收藏】
- Cesium+百度街景浏览
- 阿里、京东、拼多多都来了,互联网+疫苗是一门好生意吗?
- 【021】基于springboot的党务管理系统(含管理员、用户党支部三种身份(附源码数据库)
- 微信小程序实现文字识别-ocr插件
- php系统5000块钱的短信,两天被刷完了,短信接口被恶意盗刷怎么办?(短信接口被盗刷系列4)
热门文章
- 给小朋友讲故事——谈谈杨振宁先生第三部分终篇(七次提交稿)
- JAVA项目启动脚本编写的一些笔记整理
- js监听退出全屏事件
- 软件设计方案(界面设计)
- 实验室离心机的维护及故障排除
- 微信第三方平台研究总结
- 视频| 什么是区块链,本质、意义和发展 8月22日(本周三)晚8点, 微信群在线讲座---区块链存储(下)...
- is()和hasClass()
- 国产深度Linux(deepin)操作系统
- mysql智能提示插件_书写SQL语句的智能提示工具(SQL_Prompt_4 插件)