Avatar billede nvr Nybegynder
20. juni 2000 - 12:06 Der er 6 kommentarer og
1 løsning

navngivning af fil

Jeg har brug for en rutine, der, inden den opretter en fil, går ind i en given dir og tjekker, hvad den sidst-oprettede fil hedder og derefter kalder den fil, den vil til at oprette (forrige filnavn + 1). Det kræver vist et eksempel! :)

Scriptet vil gå ind og oprette en fil. Den tjekker at den sidstoprettede fil i en forudbestemt skuffe, hedder 2000.shtml. Derefter opretter den den nye fil og kalder den: 2001.shtml

De filer, der ligger i skuffen har alle fortløbende numre.

Den kreerer filen ved:

open (NEWSFILE,">$BaseDir/$FILNAVN.shtml");
    print NEWSFILE "Test\n";
close NEWSFILE;
Avatar billede Lasse Novice
20. juni 2000 - 13:43 #1
Jeg ved ikke lige en bedre måde end denne.

Kunne du ikke lave et dir over dit bibliotek. Søg i denne fil på 1.shtml, så 2.shtml så 4.shtml, så 8.shtml, så 16.shtml osv
Når søgningen når false, ved du hvilket interval det ligger indenfor. Du laver simpelthen samme søgning med det nye interval indtil du finder det største nummer. Herved ved du hvad det næste nummer i rækken er....
Avatar billede Lasse Novice
20. juni 2000 - 13:43 #2
"Søg i denne fil" refererer selvfølgelig til den fil hvori "dir over dit bibliotek" er lagt ned i.
Avatar billede erikjacobsen Ekspert
20. juni 2000 - 13:55 #3
$BaseDir='c:/erik';
$max=0;
opendir(D,"$BaseDir");
while ($a=readdir(D)) {
  if ($a=~/^([0-9]+)\..shtml$/ && $1>$max) {
    $max=$1;
  }
}
closedir(D);
$max++;
open(NEWSFILE,">$BaseDir/$max.shtml");
print NEWSFILE "Test\n";
close(NEWSFILE);
Avatar billede erikjacobsen Ekspert
20. juni 2000 - 13:56 #4
Hovsa:
if ($a=~/^([0-9]+)\.shtml$/ && $1>$max) {
Avatar billede Lasse Novice
20. juni 2000 - 13:58 #5
erikjacobsen er for SEJ
Avatar billede erikjacobsen Ekspert
20. juni 2000 - 14:49 #6
Jeg elsker ros - bliv bare ved...
Avatar billede nvr Nybegynder
21. juni 2000 - 09:41 #7
Det virker sørendulendanseme også! :)
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
Kategori
Kurser inden for grundlæggende programmering

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