Irgendwie muss ich glaubs einen saublöden Fehler machen, aber ich kann mir folgendes Verhalten einfach nicht erklären:
Code: Alles auswählen
print self.data.tell(), len(tmp), self.data.tell()+len(tmp),
self.data.write(tmp)
print self.data.tell()
Die Ausgabe sieht so aus:
Code: Alles auswählen
0 634 634 658
Die Länge von tmp ist 634 und nach dem schreiben sollte der Dateizeiger auf das Byte 634 zeigen.
Jedoch gibt tell nacher 658 aus.
Wie kann ich mir das erklären? Woher kommen die 24 Bytes mehr?
Gruss