[python] najdi, nahrad, uloz v ascii subore
Jaroslav Pachola
j_p_misc na centrum.cz
Pátek Srpen 25 11:32:33 CEST 2006
No, samozrejme, ze to jednim prikazem udelat nejde, ale neni prece
problem otevrit soubor
f = open(fileName, "r+")
udelat
f.seek(pozice)
potom pro pridani 10 znaku
buffer = f.read()
f.seek(pozice)
f.write("0123456789")
f.write(buffer)
nebo ubrani 10 znaku
buffer = f.read()
f.seek(pozice - 10)
f.write(buffer)
f.truncate(puvodniVelikost - 10)
samozrejme, ze v pripade velkych souboru, jejichz obsah se nevejde do
rozumne velikeho bufferu,
je potreba cist a posunovat obsah souboru po blocich (metoda read() ma
parametr).
JP
Leos Pol wrote:
> Hmm, muzete prosim napsat jednoduchy priklad, jakym zpusobem je mozne
> vlozit do obsahu souboru nekolik znaku, popr nekolik znaku odebrat? Vzdy
> jsem si myslel, ze toto neni mozne uz jen z pohledu principu
> filesystemu. Myslim si, ze je jen mozne nahratit (prepsat) urcity pocet
> znaku v souboru stejnym poctem (seek+write), pridat na konec souboru
> dalsi data, no a uplne off topic odriznuti souboru na urcitou velikost.
>
> Leo
>
>
Další informace o konferenci Python