 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Fingerboarder
Anmeldungsdatum: 09.12.2006 Beiträge: 37
|
Verfasst am: 18.02.2007, 20:59 Titel: Aelteste Datei ermiteln |
|
|
Anlässlich eines Großvater-Vater-Sohn BackUps möchte ich ermitteln, welches die älteste Datei in einem Ordner ist. Ich habe es mir so gedacht, dass das Verzeichnis (indem die BackUps sind) ausgelesen wird und bei allen Dateien das Erstellungs/Änderungs-Datum überprüft wird. Wie kann man das machen? Die Dateien sollten dann wenn möglich im Array vorliegen. Aber vllt. gibt es ja ein DOS-Prompt dafür?
Mfg Fingerboarder |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 18.02.2007, 21:25 Titel: |
|
|
Hi,
kuck doch mal hier: http://ytwinky.freebasic.de/freebasic/index.html
Da sind mehrere Verzeichnislister dabei, vllt. auch einer für dich
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Fingerboarder
Anmeldungsdatum: 09.12.2006 Beiträge: 37
|
Verfasst am: 22.02.2007, 12:33 Titel: |
|
|
Danke für den Link. Leider meldet mir der Compiler folgende Nachricht:
Code: |
Command executed:
"D:\Tools\FreeBASIC\fbc.exe" "G:\Benutzer\freeBasic\FBIDETEMP.bas"
Compiler output:
D:/Tools/FreeBASIC/inc/vbcompat.bi(57) : error 24: File not found, "file.bi"
#include once "file.bi"
^
Results:
Compilation failed
System:
FBIde: 0.4.6
fbc: FreeBASIC Compiler - Version 0.16 for win32 (target:win32)
OS: Windows XP (build 2600, Service Pack 2)
|
Nach der Windoof-Suche gibt es die fehlende Datei im Unterordner Allegro, aber gleich 2-mal. Ist sie das? Oder muss ich die Downloaden?
Mfg Fingerboarder |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 22.02.2007, 12:48 Titel: |
|
|
Hi,
das ist diese Datei http://fbc.cvs.sourceforge.net/fbc/FreeBASIC/inc/file.bi?view=markup
und die sollte sich bei dir hier befinden
D:/Tools/FreeBASIC/inc/file.bi _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
Fingerboarder
Anmeldungsdatum: 09.12.2006 Beiträge: 37
|
Verfasst am: 22.02.2007, 13:23 Titel: |
|
|
Hmm..
Könntet ihr mir erkären was folgende Zeilen bewirken (aus filelist.bas von ytwinky:
Code: |
FileTimeToLocalFileTime(@ffd.ftLastWriteTime, @localtime)
FileTimeToSystemTime(@localtime, @systime)
?Format(systime.wDay, "00") &"." &Format(systime.wMonth, "00") &"." &systime.wYear &" ";
?Format(systime.wHour, "00") &":" &Format(systime.wMinute, "00") &" ";
?" " & Hex(ffd.dwFileAttributes And 255) &" ";
?Format(Val("&h" & Hex(ffd.nFileSizeHigh) & Hex(ffd.nFileSizeLow)), "######"), ffd.cFileName
|
Ich benötige ja die Zeit der Aenderung / Erstellung um den aeltesten zu ermitteln.
Ich hab jetzt ermittelt, dass
Code: | ?Format(systime.wDay, "00") &"." &Format(systime.wMonth, "00") &"." | das Datum ausgibt, wie kann ich das dann vergleichen?
gibt ne Zahl aus, kann man die zum Vergleich heranziehen?
Mfg FBrider[/code] |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 22.02.2007, 14:05 Titel: |
|
|
filelist.bas hat Folgendes geschrieben: | Code: | FileTimeToLocalFileTime(@ffd.ftLastWriteTime, @localtime) |
|
API Guide hat Folgendes geschrieben: | The FileTimeToLocalFileTime function converts a file time based on the Coordinated Universal Time (UTC) to a local file time. |
filelist.bas hat Folgendes geschrieben: | Code: | FileTimeToSystemTime(@localtime, @systime) |
|
API Guide hat Folgendes geschrieben: | The FileTimeToSystemTime function converts a 64-bit file time to system time format. |
filelist.bas hat Folgendes geschrieben: | Code: | ?Format(systime.wDay, "00") &"." &Format(systime.wMonth, "00") &"." &systime.wYear &" "; |
| Tag und Monat werden hier 2-stellig formatiert, z.B. 01.04. für 1. April(das Jahr wird gem. Systemeinstellung ausgegeben, bei mir 4-stellig).. filelist.bas hat Folgendes geschrieben: | Code: | ?Format(systime.wHour, "00") &":" &Format(systime.wMinute, "00") &" "; |
| Stunde und Minute werden hier 2-stellig formatiert, z.B. 00:05 für 5 nach 12  filelist.bas hat Folgendes geschrieben: | Code: | ?" " & Hex(ffd.dwFileAttributes And 255) &" "; |
| Das DateiAttribut(ist ein Byte) wird ausgegeben, durch 'And 255' wird garantiert nur das untere Byte ausgegeben.. filelist.bas hat Folgendes geschrieben: | Code: | ?Format(Val("&h" & Hex(ffd.nFileSizeHigh) & Hex(ffd.nFileSizeLow)), "######"), ffd.cFileName |
| Die DateiGröße wird hier zusammengebastelt und ausgegeben..
An den gespeicherten Werten wird also nix geändert, die Ausgabe wird lediglich umformatiert(als String!!)..
Du mußt halt nur für die gewünschten Vergleiche Variablen einführen.
Das ist der Vorteil von Format()..
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|