[gelöst] base64 encode->decode : 2 Bytes zuviel

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
arghargh
User
Beiträge: 81
Registriert: Donnerstag 4. September 2008, 22:26

out.png ist 2 Bytes größer als in.png - warum?

Code: Alles auswählen

import sys
import base64

f = open("in.png", "rb")  # read binary
image = f.read()
f.close()

string = base64.encodestring(image)
image = base64.decodestring(string)

f = open("out.png", "wb")   # write binary, too!!
f.write(image)
f.close()
Zuletzt geändert von arghargh am Sonntag 5. Oktober 2008, 12:59, insgesamt 2-mal geändert.
arghargh
User
Beiträge: 81
Registriert: Donnerstag 4. September 2008, 22:26

Ziemlich am Anfang der Datei werden zwei 0x0D eingefügt. Aber wieso?

Python 2.5.2 unter windows
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Schau dir mal an, wie du die Datei zum Lesen und wie du sie zum Schreiben öffnest.
"Der Dumme erwartet viel. Der Denkende sagt wenig." ("Herr Keuner" -- Bertolt Brecht)
arghargh
User
Beiträge: 81
Registriert: Donnerstag 4. September 2008, 22:26

AH! Sehr gut, ich wusste gar nicht, dass da unterschieden wird. Danke.

Habe es oben korrigiert.
Antworten