Avatar billede rygter Nybegynder
03. maj 2002 - 12:57 Der er 2 kommentarer og
1 løsning

rewrite

Jeg sidder lige og roder med noget perl som jeg ikke helt kan finde rundt i.
Jeg læser noget data fra en fil og lægger derpå 1 til tallet. Hvordan kan jeg så erstatte det samme tal igen. Det skal gøre i en hel del linier så det skal helst ikke være alt for uoptimalt.

Her er noget af koden:
    open(chan, "+< stat/chan.stat") || die;
    while($chanline = <chan>)
        {
        if($chanline !~ /\#.*/)
            {
            #this is where different data is read and rewrite
            if($chanline =~ /totallines\s.*/)
                {
                ($totallines) = $chanline =~ /totallines\s(\d*)/;
                $totallines++;

                printf("total: $totallines\n");
                }
           
            #more

            }
        }   
    close(chan);

Håber det ikke ser alt for forvirrende ud når jeg trykker "opret spørgsmål". Har min tvivl :P

Den vil som den læser/skriver fra/til ser sådan ud:

# DO NOT EDIT!!!

totallines 0
totalwords 0
totalchars 0


Håber nogen kan hjælpe.
Avatar billede flarup Nybegynder
03. maj 2002 - 17:48 #1
Hvor vil du erstatte tallet?
Avatar billede eeyore Nybegynder
12. juni 2002 - 01:44 #2
Du har åbnet filen for både skrivning og læsning, så jeg går ud fra, at det du vil, er at skrive direkte ned i samme fil igen på et givent sted. Det kan du nok ikke, da du kan risikere, at dit nye tal fylder flere karakterer end det gamle. Du bliver nok derfor nødt til at skrive hele filen igen.
Avatar billede rygter Nybegynder
12. juni 2002 - 11:11 #3
Jeg har fundet et løsning. I behøver ikke sende flere svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester