Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 8, 2009 12:06:54

Стас Агарков
От:
Зарегистрирован: 2009-11-07
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вывести двоичные данные

Как вывести скриптом на питоне картинку в браузер?

Пишу так:

def readFile(fullFileName, mode=“rb”):
currentFile=open(fullFileName,mode)
fileContent=currentFile.read()
currentFile.close()
return fileContent

print “Content-Type: image/png;\n”
print readFile(“ticketTime.png”)

Но при выводе переносы строк криво обрабатываются.



Офлайн

#2 Ноя. 8, 2009 12:26:05

Стас Агарков
От:
Зарегистрирован: 2009-11-07
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вывести двоичные данные

Немного прояснил ситуацию: переносы строк портит только Python под Windows. Версия 2.6.

Такой код выводит то же самое, что и в файле (проверял по md5) в Ubuntu, и портит переносы в Windows.

import sys

filee=open(“ticketTime.png”,“rb”)
string=filee.read()
filee.close()
sys.stdout.write(string)



Офлайн

#3 Ноя. 8, 2009 12:48:09

Стас Агарков
От:
Зарегистрирован: 2009-11-07
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вывести двоичные данные

Я понял в чем дело.
Надо писать так:

if sys.platform == “win32”:
import msvcrt
msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version