Seite 1 von 1

Überprüfung ob eine Datei an einer bestimmten Stelle vorhand

Verfasst: 04.07.2005 11:51
von HoDam
Hallo,

ich möchte überprüfen ob eine 'Datei an einer bestimmten stellen vorhanden ist.

wenn nein, dann soll ein Requester geöffnet werden mit einer Information.
wenn ja . soll er das Programm weiter ausführen

habe es mit
Ergebnis = IsFile(#File)

versucht. Komme damit aber nciht weiter.

Danke

Verfasst: 04.07.2005 12:18
von Green Snake
naja, etwa so?

Code: Alles auswählen

If FileSize(FileName$) > 0
  MessageRequester("","File vorhanden")
;bzw weiterer programmcode
Else
  MessageRequester("","File nicht vorhanden")
EndIf

erklärung:
waurm muss man prüfen, ob filesize grösser als 0 ist?
ganz einfach, es giebt auch 0 b grosse daten :allright:


edit:
is eigentlich logisch, wenn die dateigrösse vorhanden ist, dan muss das file auch vorhanden sein :lol:
deshalb reicht filesize :allright:

Verfasst: 04.07.2005 12:38
von Caliban
Oder besser so:

Code: Alles auswählen

Size = FileSize(FileName)

Select Size
  Case -1
    MessageRequester("","File nicht vorhanden")
  Case -2
    MessageRequester("","File ist ein Verzeichnis")
  Default
    MessageRequester("","File vorhanden")
EndSelect

Verfasst: 04.07.2005 12:40
von Kiffi
> waurm muss man prüfen, ob filesize grösser als 0 ist?

das habe ich mich gerade auch gefragt.

> ganz einfach, es giebt auch 0 b grosse daten :allright:

und aus diesem Grund gibst Du bei 0-Byte-Dateien aus, dass die Datei nicht
vorhanden ist? Das ist falsch.

Code: Alles auswählen

If FileSize(FileName$) = -1
  ; Datei nicht vorhanden
EndIf 
Grüße ... Kiffi

Edit: So wie caliban es vorgeschlagen hat, ist es sowieso besser

Verfasst: 04.07.2005 12:44
von Caliban
@Kiffi
Dein Code hat auch eine kleine Schwäche, wenn es nämlich zufällig ein Verzeichnis sein sollte ist deine Bedinung nicht wahr.

Das ist besser:

Code: Alles auswählen

If FileSize(FileName$) < 0
  ; Datei nicht vorhanden
EndIf

Verfasst: 04.07.2005 12:55
von Kiffi
> Dein Code hat auch eine kleine Schwäche

ja, habe ich schon bemerkt:

> So wie caliban es vorgeschlagen hat, ist es sowieso besser

Verfasst: 04.07.2005 13:55
von HoDam
THX

Sie muss natürlich nicht nur existieren sondern auch gefüllt sein
<= 0 muss auf alle Fälle so sein, da der Inhalt der Datei immer größer ist.

Verfasst: 04.07.2005 14:48
von bluejoke
Dann solltest du allerdings eine andere Fehlermeldung verwenden.

"Datei korrupt" zum Beispiel, auch wenn das kein Glanzlicht deutscher Sprache ist.

Verfasst: 04.07.2005 19:38
von Sylvia
>>bluejoke: "Datei korrupt" zum Beispiel, auch wenn das kein Glanzlicht deutscher Sprache ist.

Genau. Besser wäre: "Datei bestechlich"

<)