[Delphi] Hoe lees Date Modified uit?

Pagina: 1
Acties:

  • Brabrabra
  • Registratie: Januari 2002
  • Laatst online: 09:15

Brabrabra

Chaoss ahv

Topicstarter
Ik ben met een progje bezig waar een soort explorer gedeelte in moet. Hoe kan ik gemakkelijk de Date Modified van een file uitlezen? :?

En is er ook een gemakkelijk trucje om files makkelijk te sorteren op date of type of size of moet je daar allemaal zelf procedures voor schrijven?

Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!


  • whoami
  • Registratie: December 2000
  • Laatst online: 11:19
Heb je de Delphi - help er al eens op nageslagen?

File management routines...
FileGetDate
etc...

Brabrabra schreef op 13 augustus 2002 @ 16:45:

En is er ook een gemakkelijk trucje om files makkelijk te sorteren op date of type of size of moet je daar allemaal zelf procedures voor schrijven?


Waarin wil je de files sorteren? In een ListView, op een report....

https://fgheysels.github.io/


  • Brabrabra
  • Registratie: Januari 2002
  • Laatst online: 09:15

Brabrabra

Chaoss ahv

Topicstarter
Ik gebruik nu voor de datum dit:

fs.Create(FileListBox1.Items[k],fmOpenRead);
tijdstempel:=FileGetDate(fs.Handle);
datum:=FileDateToDateTime(tijdstempel);

Maar dan krijgt hij telkens bij de bovenste regel een Access Violation...

Ik wil het sorteren in een TListView met ViewStyle vsReport inderdaad ja :)

Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!


  • whoami
  • Registratie: December 2000
  • Laatst online: 11:19
Ik wil het sorteren in een TListView met ViewStyle vsReport inderdaad ja :)
Kijk eens in de Delphi Help naar de OnColumnClick en OnCompare Events van de ListView....

https://fgheysels.github.io/


  • Brabrabra
  • Registratie: Januari 2002
  • Laatst online: 09:15

Brabrabra

Chaoss ahv

Topicstarter
OK, het sorteren werkt!

Ik zit nog met die Access Violation. Weet iemand wat ik hier aan moet doen?

Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 09:50

mulder

ik spuug op het trottoir

F1 gebruiken, die toets zit er nou eenmaal.

fs := TFileWhatEver.Create(File....

oogjes open, snaveltjes dicht


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 01-09 21:18

Tomatoman

Fulltime prutser

Brabrabra schreef op 13 augustus 2002 @ 21:16:
Ik gebruik nu voor de datum dit:

fs.Create(FileListBox1.Items[k],fmOpenRead);
tijdstempel:=FileGetDate(fs.Handle);
datum:=FileDateToDateTime(tijdstempel);

Maar dan krijgt hij telkens bij de bovenste regel een Access Violation...
Je probeert hier in de eerste regel een constructor (Create) aan te roepen van een filestream die nog niet bestaat. Dat gaat natuurlijk niet goed. Wat je zou moeten doen, is de constructor van de TFileStream class aanroepen. De constructor retourneert dan een instantie van de class.
code:
1
2
3
4
    fs := TFileStream.Create(FileListBox1.Items[k], fmOpenRead);
    tijdstempel := FileGetDate(fs.Handle);
    datum := FileDateToDateTime(tijdstempel);
    fs.Free; // fs vernietigen, geheugen terugclaimen

De class (bijvoorbeeld THond) is eenvoudig gezegd de definitie van hoe een object eruit ziet. Het object zelf (bijvoorbeeld Bello) is een instantie van de class (Engels: instance). Een instantie creëer je met een constructor (meestal Create) en vernietig je met Free (dus niet met de destructor Destroy!).

Om er zeker van te zijn dat je bij een foutmelding geen geheugenlek krijgt, is het vaak verstandig om een try...finally constructie te gebruiken:
code:
1
2
3
4
5
6
7
Bruto := THond.Create;
try
  Bruto.StartBlaffen;
  Bruto.MuilHouden := True;
finally
  Bruto.Free;
end;

Een goede grap mag vrienden kosten.

Pagina: 1