python中文件打开空白_在Python,Django中,下载的文件总是空白的

您必须将指针移动到缓冲区的开头并使用seek并使用flush以防万一写入未执行.

from django.core.servers.basehttp import FileWrapper

import StringIO

def aux_pizarra(request):

myfile = StringIO.StringIO()

myfile.write("hello")

myfile.flush()

myfile.seek(0) # move the pointer to the beginning of the buffer

response = HttpResponse(FileWrapper(myfile),content_type='text/plain')

response['Content-Disposition'] = 'attachment; filename=prueba.txt'

return response

这是在控制台中执行此操作时发生的情况:

>>> import StringIO

>>> s = StringIO.StringIO()

>>> s.write('hello')

>>> s.readlines()

[]

>>> s.seek(0)

>>> s.readlines()

['hello']

在那里你可以看到如何将缓冲区指针指向开头以进行读取.

希望这可以帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值