2008/3/18, Nicola Giosmin - <[EMAIL PROTECTED]>:
>
> Ciao a tutti,
>
> Domanda: è possibile inserire singoli byte (o
> gruppi di byte) in un file binario (io uso il
> metodo struct) in un punto preciso?
>
> Se faccio:
>
> f = file
> f.seek(12)
> s = 0
> f.write(struct.pack("b", s))
> f.close()
>
> Effettivamente un byte nuovo viene inserito "al
> posto" del 13mo byte del file. Io però vorrei
> che il byte venisse inserito al 13mo posto
> senza "mangiarsi" il byte che c'era prima (il
> quale verrebbe spostato al 14mo posto). Cioè: se
> inserisco 10 byte, vorrei che il file fosse
> più lungo di 10 byte... Ma magari è una cosa
> impossibile e sto delirando. :)
NON puoi inserire bytes in un file sequenziale, indipendentemente dal fatto
che sia in binario o in testo.
Quello che puoi fare è aggiungere la parte che ti interessa al posto giusto
e poi RISCRIVERE tutto quello che aveva in coda e vuoi ancora conservare.
Per le insert devi usare strutture dati DIVERSE da un file sequenziale.
Ciao
Licia
Scusate il
> mio linguaggio inappropriato, spero di essermi
> spiegato.
>
> Grazie in anticipo
>
> nicgios
>
>
>
> _______________________________________________
> Python mailing list
> [email protected]
> http://lists.python.it/mailman/listinfo/python
>
_______________________________________________
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python