Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Rivin luku tiedostosta

Jorgga [01.06.2006 01:06:47]

#

Miten pystyisi lukemaan tietyn rivin tiedostosta?
eli miten voisi avata tiedoston muokata tiettyä riviä ja kirjottaa kaiken uudestaan?

Heikki [01.06.2006 06:49:04]

#

Suoraa komentoa tähän ei ole, vaan sinun on luettava tiedoston sisältö muistiin kokonaisuudessaan, muokattava ja kirjoitettava se uudestaan tiedostoon. Tyyliin

$rivit = file("filu.txt");
$rivit[3]="FOO"; // 4. rivi muutetaan
// Ja tiedostoon
$tt = fopen("filu.txt", "w");
for ($i=0; $i<count($rivit); $i++)
 fwrite($tt, $rivit[$i]."\n");
fclose($tt);

Metabolix [01.06.2006 08:03:50]

#

Ja trim-funktio kirjoitettaessa, koska luetut rivit sisältävät jo rivinvaihdon.

fwrite($tt, trim($rivit[$i]));

Toinen (parempi?) vaihtoehto on laittaa muokattavallekin riville rivinvaihto jo valmiiksi, jos jollakin rivillä on merkityksellisiä välejä rivin alussa tai lopussa. On myös mahdollista tehdä tuosta "rivistä" useamman rivin mittainen laittamalla väleihin rivinvaihtoja.

$rivit = file("filu.txt");
$rivit[1] = "Moi!\nTeinpä kaksi riviä!\n"; // 2. rivi muutetaan kahdeksi riviksi
// Ja tiedostoon
$tt = fopen("filu.txt", "w");
for ($i = 0; $i < count($rivit); ++$i)
  fwrite($tt, $rivit[$i]);
fclose($tt);

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta