码迷,mamicode.com
首页 > 编程语言 > 详细

使用python在WEB页面上生成EXCEL文件

时间:2014-12-09 15:35:20      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   os   使用   sp   on   文件   

来自:http://blog.sina.com.cn/s/blog_5d18f85f0101bxo7.html

近日写的一个程序需要在WEB服务器上生成EXCEL文件供用户下载,研究了一下找到了以下比较可行的实现方案,下面以web.py为例,把相关代码贴出来供大家参考:

首先需要下载生成EXCEL的模块,推荐使用xlwt

import xlwt
import StringIO

import web

urls = (
‘/rim_request‘,‘rim_request‘,
‘/rim_export‘,‘rim_export‘,
‘/(.*)‘, ‘index‘
)

class rim_export:
#render = web.template.render(‘adsl‘)
def GET(self):
web.header(‘Content-type‘,‘application/vnd.ms-excel‘)  #指定返回的类型
web.header(‘Transfer-Encoding‘,‘chunked‘)
web.header(‘Content-Disposition‘,‘attachment;filename="export.xls"‘) #设定用户浏览器显示的保存文件名
wb=xlwt.Workbook()
wb.encoding=‘gbk‘
ws=wb.add_sheet(‘1‘)
ws.write(0,1,‘123‘)  #如果要写中文请使用UNICODE
sio=StringIO.StringIO()
wb.save(sio)  #这点很重要,传给save函数的不是保存文件名,而是一个StringIO流
return sio.getvalue()

这个方案的好处是不需要生成临时文件,就可以把EXCEL文件以流的形式直接返回到用户浏览器

 

 

 

生成excel文件乱码问题

style = xlwt.XFStyle()
font = xlwt.Font()
font.name = ‘SimSun‘    # 指定“宋体”
style.font = font       

table.write(1, 1, ‘测试‘, style) # 使用 style

使用python在WEB页面上生成EXCEL文件

标签:style   blog   http   io   os   使用   sp   on   文件   

原文地址:http://www.cnblogs.com/chjbbs/p/4153314.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!