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