neo Posted May 18, 2005 Report Posted May 18, 2005 Kaa es varu paarrakstiit txt failaa piemeeram 3 rindu?
bubu Posted May 18, 2005 Report Posted May 18, 2005 Visvienkāršāk - nolasi visu failu atmiņā(masīvā ar file() fju), aizvieto vajadzīgo elementu, un ieraksti atpakaļ. Sarežģītāk - lieto fiksēta garuma rindas, tādējādi varēsi aizseekot (fseek) uz vajadzīgo rindu, kad vajadzēs tai rakstīt pa virsu. (atverot failu r+ režīmā).
neo Posted May 18, 2005 Author Report Posted May 18, 2005 OK. Biski paarfrazeeshu jautaajumu :) Kaa ar f-ciju fwrite() var ierakstiit kaut ko teksta faila 3 rindaa ?
bubu Posted May 18, 2005 Report Posted May 18, 2005 Ja rindām ir patvaļīgs garums, tad nav tik vienkārši - jālasa viss fails pēc kārtas, uzskaitot rindas (\n simbolus), līdz ko tiek atrasts trešais, tad var rakstīt, pirms tam pārliecinoties, ka garums ir mazāks vai vienāds, kā pašlaik esošās rindas garums, citādi tiks pārrakstīta vēl 4.rinda. Īsāk sakot - liels čakars. Vai nu ņem to file() veidu, vai arī fiksēta garuma rindas (tādā gadījumā - fseek($f, $rindas_garums_simbolos*3); fwrite($f, $rinda); )
Recommended Posts