PHP Forum - Coding Board
Januar 16, 2018, 10:10:15 *
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
News:
 
   Übersicht   Hilfe Suche Einloggen Registrieren  
Seiten: [1]
  Drucken  
Autor Thema: FileExistsCheck?  (Gelesen 137 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
Runaway
Jr. Member
**
Beiträge: 69


Profil anzeigen E-Mail
« am: März 13, 2009, 08:37:23 »

Hey, ich habe hier 2 fileexistschecks:

Zitat
Public Function fileexists(ByVal sFilename As String) As Boolean
Dim Fl As Integer: Fl = Len(Dir$(sFilename))
    On Local Error Resume Next
    fileexists = IIf(Err Or Fl = 0, False, True)
End Function

UND:

Zitat
Function fileexists(ByVal path As String) As Boolean
On Error GoTo fileexists_false

    Dim X As Long
    X = FreeFile

    Open path$ For Input As X
    fileexists = True
    Close X
    GoTo TheEnd:

fileexists_false:
    fileexists = False

TheEnd:
End Function

Nun meine Frage:
Welcher von den ist sinnvoller/besser/bugfreier/whatever ??
Gespeichert
ShockerZz
Jr. Member
**
Beiträge: 89


491984937
Profil anzeigen E-Mail
« Antworten #1 am: März 13, 2009, 09:17:44 »

Gibt es nicht schon einen derartigen Check? Bei VB2008 My.Computer.FileSystem.FileExists. Aber bei der 2. solltest du auf jeden Fall GoTo vermeiden, in höheren Sprachen gibt es das nicht mehr und auch in VB ist es vermeidbar.
Gespeichert

[SIGPIC][/SIGPIC]
Runaway
Jr. Member
**
Beiträge: 69


Profil anzeigen E-Mail
« Antworten #2 am: März 13, 2009, 09:59:30 »

Zitat von: ShockerZz;14430
Gibt es nicht schon einen derartigen Check? Bei VB2008 My.Computer.FileSystem.FileExists. Aber bei der 2. solltest du auf jeden Fall GoTo vermeiden, in höheren Sprachen gibt es das nicht mehr und auch in VB ist es vermeidbar.

Ja, aber das ist nicht .NET sondern VB6, da weiss ich nicht so genau :p

GOTO ist immer böse, da es zu nem Spaghetti code führen kann, aber in so einem kleinen Modul stört es ja keinen^^
Gespeichert
Epiphone
Jr. Member
**
Beiträge: 52


Profil anzeigen E-Mail
« Antworten #3 am: März 20, 2009, 09:50:59 »

Zitat
Public Function FileExist(FilePath As String) As Boolean
   On Error GoTo Fehl000r
    Call FileLen(FilePath)
    FileExist = True
    Exit Function

Fehl000r:
    FileExist = False
End Function

Du kannsts auch ganz simple mit Dir(pfad) machen.
Da hast dann kein GoTo mehr Zwinkernd
Gespeichert
big earl
Newbie
*
Beiträge: 4


226722385 bigearl@live.de
Profil anzeigen E-Mail
« Antworten #4 am: Juni 29, 2009, 06:11:52 »

Ich würde es eher so machen ( ^^)
Somit können auch Ordner abgefragt werden

Code:
Public Function iFileExist(iFilepath As String) As Boolean
    If (Dir(iFilepath) <> &quot;&quot;) Then
        iFileExist = True
    Else
        iFileExist = False
    End If
End Function


Beispiel:

Code:
Private Sub Form_Load()
    If iFileExist("cmd.exe") = True Then
        MsgBox "Die Datei existiert"
    Else
        MsgBox "Die Datei existiert nicht"
    End If
End Sub
Gespeichert
Seiten: [1]
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | New Look by Nolt Prüfe XHTML 1.0 Prüfe CSS