Python生成并下载文件后端代码实例
txt文件
生成并下载txt文件:
@app.route('/download',methods=['GET'])
defdownload():
content="longtext"
response=make_response(content)
response.headers["Content-Disposition"]="attachment;
filename=myfilename.txt"
returnresponse
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/download,直接下载txt文件。
excel文件
生成并下载excel文件:
@app.route("/export",methods=['GET'])
defexport():
out=BytesIO()
workbook=xlsxwriter.Workbook(out)
table=workbook.add_worksheet()
table.write(0,0,"第1列")
table.write(0,1,"第2列")
table.write(0,2,"第3列")
table.write(0,0,"name")
table.write(1,1,"sex")
table.write(2,2,"class")
workbook.close()
out.seek(0)
filename=quote("Entity类下载.xlsx")
rv=send_file(out,as_attachment=True,attachment_filename=filename)
rv.headers['Content-Disposition']+=";filename*=utf-8''{}".format(filename)
returnrv
运行app.py后,在浏览器中输入:http://127.0.0.1:5000/export,可以直接下载excel文件。
前后端分离时,接口返回时要注意headers
defexportExcel():
workbook=xlwt.Workbook(encoding='utf-8')
wSheet=workbook.add_sheet("Plan")
titleFont=xlwt.Font()
f=BytesIO()
workbook.save(f)
f.seek(0)
filename=quote(saveFile)#将单个字符串编码转化为%xx%xx的形式
rv=send_file(f,as_attachment=True,attachment_filename=filename)
rv.headers['Content-Disposition']+=";filename*=utf-8''{}".format(filename)
rv.headers['Cache-Control']='no-store'#重点在这句!!!!!!!!!!!!!!!!!
returnrv
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。