Avatar billede safl Nybegynder
30. september 2003 - 10:11 Der er 13 kommentarer og
1 løsning

Fil ældrere end 4 dage?

Hello!

Jeg har en funktion der snupper "modify-date" ud af den specificerede fil. Det jeg har brug for nu er at bestemme om filen er 4 eller flere dage "gammel" altså om filen er blevet ændret indenfor 4 dage.
funktionen kan ses her: http://www.safl.dk/function.txt

håber i kan hjælpe!

mvh safl
Avatar billede snowball Novice
30. september 2003 - 10:26 #1
function GetFileModifyDate(FileName: string): TDateTime;
var
  h: THandle;
  Struct: TOFSTRUCT;
  lastwrite: Integer;

begin
  h := OpenFile(PChar(FileName), Struct, OF_SHARE_DENY_NONE);
  try
    if h <> HFILE_ERROR then
    begin
      lastwrite := FileGetDate(h);
      //Result    := FormatDateTime('DDDD, d. mmmm yyyy hh:mm:ss', FileDateToDateTime(lastwrite));
      Result := FileDateToDateTime(lastwrite);
    end;
  finally
    CloseHandle(h);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  DageGammel: Integer;
begin
  DageGammel := 4;
  If (Now - (GetFileModifyDate('e:\test.txt'))) >= DageGammel Then
    ShowMessage('Er mindst 4 dage gammel')
  Else
    ShowMessage('Er mindre end 4 dage gammel');
end;


Snowball
Avatar billede snowball Novice
30. september 2003 - 10:26 #2
Bemærk at jeg har lavet om på GetFileModifyDate funktionen !

Snowball
Avatar billede borrisholt Novice
30. september 2003 - 10:36 #3
Avatar billede borrisholt Novice
30. september 2003 - 10:37 #4
Bemærk i skyder gårspurve med kanoner.
Avatar billede safl Nybegynder
30. september 2003 - 10:38 #5
Tester lige :)
Du har lavet result-typen om til TDateTime istedet for string?
Avatar billede borrisholt Novice
30. september 2003 - 10:43 #6
Når nu du alligevel løber dit biblotek i gennem med find first find Next, er der ingen grund til at "tage" fat i filen igen
Avatar billede snowball Novice
30. september 2003 - 10:51 #7
Jens: Hvad er der nu galt i at skyde gråspurve med kanoner !? ;)

Snowball
Avatar billede safl Nybegynder
30. september 2003 - 10:51 #8
Jeg løber ingenting igennem der er tale om 1 fil der skal tjekkes. Men det du har lavet ser da meget smart ud men hvad er sAge? Er det ikke udfra filens oprettelses dato? Og IKKE filens 'ændret' dato?
Avatar billede borrisholt Novice
30. september 2003 - 10:53 #9
Det er alderen på filen. Det samme som du har i lastwrite.

Jeg skal bare ikke have fat i filen to gange for at få resultatet ....

Jeg troede blot der var tale om flere filer du skulle chekke.

Jens B
Avatar billede borrisholt Novice
30. september 2003 - 10:55 #10
snowball >> Jeg er godt klar over det gennem tiderene har vret en yndet sport Og iøvrigt var det Svaner man skød med kanoner, helt op i slutningen af 1700 tallet var det en populr sport blandt adlen og monarken.

Det er ikke moderne mere !

Jens B
Avatar billede borrisholt Novice
30. september 2003 - 10:56 #11
Og iøvrigt er min løsning bedere en din !

(Det er nemlig min)

ÆV BÆV !
Jens B
Avatar billede safl Nybegynder
30. september 2003 - 16:28 #12
Snowball svarede først og det var hans svar jeg endte med at bruge så point til ham! Jeg kan ikke helt se hvorfor din er bedre borrisholt så derfor ingen point til dig.
Avatar billede borrisholt Novice
30. september 2003 - 16:49 #13
Det var bare pjat ... Men løsning var bedere fordi det var min :-)
Avatar billede safl Nybegynder
30. september 2003 - 16:58 #14
Hehe ok :) Selvtillid er en god ting men borris burde du ikke ta' og lave en ordentlig hjemmeside? Den er jo mega fucked!
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