|
|||||||||||||||||||||||||||
On Wed, 16 Jun 1999, Lennart Hansen wrote:
> Jeg er startet på et program, der skal fungere som en slaks text editor,
> jeg ville lige høre om eller anden kunne give mig et hint(helst kode og
> beskrivelse), på hvordan man kan sætte flere liniers tekst ind i en
> variable ???
>
> er det noget med "$tekst = <STDIN>;" at gøre ???
> eller skal jeg bruge en helt anden funktion ??
Fra standard input?
$tekst = join("", <STDIN>);
laeser al hvad der er at laese paa stdin og smider det ind i $tekst.
Hvad sker der: <STDIN> i "scalar contekst" (som $tekst = <STDIN>)
returnerer een linie. I array context som her -- andet argument til join
er en array -- returnerer den alle linierne som en array. Saa laver vi en
join paa det for at laegge dem sammen.. og vi har alle linier i filen.
Dette tager selfvoelgelig en del hukommelse proportionel med filens
stoerrelse.
En anden metode er at undefine $/, som er den karakter som staar i
slutningen af en linie. Hvis du undefiner den, saa vil $tekst = <STDIN>
laese indtil filens slut. Se dokumentation for det.
--
==============================================================================
Erwin Andreasen Herlev, Denmark <sslug@sslug> UNIX System Programmer
<URL:http://www.andreasen.org> <*> (not speaking for) DDE
==============================================================================
|
||||||||||||||
|
||||||||||||||