26. juli 2001 - 08:21Der er
9 kommentarer og 1 løsning
Filer og EOF!
Jeg har et tekstdokument hvor i jeg skal putte enkeltvis data iden og lukke den igen. Men der må højst være 500 linier i filen, hvorefter den skal oprette en ny fil. Hvad hedder den test forspørgsel?
Der er mange måder at gøre det på. Jeg ville foreslå noget i stil med følgende. Først en opskærning af data i de dele, der skal i de forskellige filer, og efterfølgende skrivning til filerne.
Det antages at indholdet til filerne ligger i @datalines.
(Bemærk: koden er ikke testet, så der skal sikkers rettes lidt til). -- my @datalines; # <- indeholder linjerne til filerne... my $maxlinesprfile = 499; my $count = 0;
Normalt burde <FILE> returnere false når de fil ikke er længere.
Jeg prøvede lige at lave følgende script: --
#!/usr/bin/perl -w use strict;
my @data; my $maxlines = 100; my $count =0; open FILE, \'test.data\'; while (<FILE> && $count < $maxlines) { push @data, $_; $count++; } close FILE;
print \"Read $count lines\\n\";
exit(); -- I filen \"test.data\" havde jeg 2000 linjer, og hvis jeg prøver at justere $maxlines til 2000+ linjer læser den kun 2000, og sætter jeg den mindre, læser den mindre.
Hmmmm skummel, jeps dit script virker.....jeg lukker den anden igen, så må jeg hellere rode lidt mere med det.
Måske druesukker kan gøre nogle underværker *S*
Synes godt om
Ny brugerNybegynder
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.