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
> Python@lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a