<br><br><div><span class="gmail_quote">2008/3/18, Nicola Giosmin - <<a href="mailto:nicgios@yahoo.it">nicgios@yahoo.it</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Ciao a tutti,<br> <br> Domanda: è possibile inserire singoli byte (o<br> gruppi di byte) in un file binario (io uso il<br> metodo struct) in un punto preciso?<br> <br> Se faccio:<br> <br> f = file<br> f.seek(12)<br>
s = 0<br> f.write(struct.pack("b", s))<br> f.close()<br> <br> Effettivamente un byte nuovo viene inserito "al<br> posto" del 13mo byte del file. Io però vorrei<br> che il byte venisse inserito al 13mo posto<br>
senza "mangiarsi" il byte che c'era prima (il<br> quale verrebbe spostato al 14mo posto). Cioè: se<br> inserisco 10 byte, vorrei che il file fosse<br> più lungo di 10 byte... Ma magari è una cosa<br>
impossibile e sto delirando. :) </blockquote><div><br>NON puoi inserire bytes in un file sequenziale, indipendentemente dal fatto che sia in binario o in testo.<br>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.<br>
Per le insert devi usare strutture dati DIVERSE da un file sequenziale.<br><br>Ciao<br>Licia<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Scusate il<br> mio linguaggio inappropriato, spero di essermi<br> spiegato.<br> <br> Grazie in anticipo<br> <br> nicgios<br> <br> <br> <br> _______________________________________________<br> Python mailing list<br> <a href="mailto:Python@lists.python.it">Python@lists.python.it</a><br>
<a href="http://lists.python.it/mailman/listinfo/python">http://lists.python.it/mailman/listinfo/python</a><br> </blockquote></div><br>