Datei löschen

  • VB.NET

Es gibt 16 Antworten in diesem Thema. Der letzte Beitrag () ist von alex2009.

    Datei löschen

    Hallo VB Fans
    ich hab mal eine frage ich möchte eine datei löschen
    hmm ja ist ja eigentlich leicht aber
    die datei soll erstmal gecheckt werden ob sie da ist:

    VB.NET-Quellcode

    1. If My.Computer.FileSystem.FileExists("C:\lalal\*.txtu") = True Then
    2. msgbox("datei ist da")
    3. Else
    4. msgbox("datei nicht da")
    5. End if


    aber da die datei immer anders heißt
    möchte ich in dem ordner lalal
    alle datei mit der endung *.txtu löschen
    aber wie geht das so wie ich es versucht habe geht das leider nicht
    weiß einer von euch eine lösung?

    mfg
    alex2009
    jep nur mit der endung .txtu

    //edit:

    Problem:

    VB.NET-Quellcode

    1. If My.Computer.FileSystem.GetFiles("D:\lalalal", FileIO.SearchOption.SearchAllSubDirectories, "*.txtu") = True Then
    2. MsgBox("gefunden")
    3. Else
    4. MsgBox("nicht gefunden")
    5. End If


    Feler:
    Fehler1: Der =-Operator ist für die Typen "System.Collections.ObjectModel.ReadOnlyCollection(Of String)" und "Boolean" nicht definiert.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „alex2009“ ()

    Ich glaube du willst wissen, ob es mindestens eine dieser Dateien in dem Ordner und Unterordner gibt oder? Dann arbeite mal am besten mit Length:

    VB.NET-Quellcode

    1. If My.Computer.FileSystem.GetFiles("D:\lalalal", FileIO.SearchOption.SearchAllSubDirectories, "*.txtu").Length > 0 Then 'Oder halt die Anzahl der Dateien die du mindestens brauchst
    2. MsgBox("gefunden")
    3. Else
    4. MsgBox("nicht gefunden")
    5. End If


    Alteran
    Ich glaub nicht das es Length gibt, aber count:

    VB.NET-Quellcode

    1. Dim fso = My.Computer.FileSystem.GetFiles("D:\test", FileIO.SearchOption.SearchAllSubDirectories, "*.hta")
    2. If fso.Count > 0 Then
    3. Dim filenames As String = ""
    4. For Each file In fso
    5. filenames += file & " ; "
    6. Next
    7. MsgBox(fso.Count & " Dateien gefunden " & filenames)
    8. Else
    9. MsgBox("nicht gefunden")
    10. End If
    Das ist meine Signatur und sie wird wunderbar sein!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Mono“ ()

    Vollzitat des direkten Vorposts an dieser Stelle entfernt ~VaporiZed

    das ist fast das was ich suche also es funktionirt schonmal
    aber er soll nur gucken ob es die datei gibt
    also in dem ordner ist nur 1 datei mit der endung .txtu
    und wenn sie da ist soll er sie löschen wenn nicht soll er nix machen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    Willst du die nur löschen, wenn es die einmal gibt, oder auch, wenn es die mehrmals gibt.

    Ich würde, wenn du sie mehrmals löschen willst, aber mit den FileInfo und DirectoryInfo-Klassen arbeiten, dass geht dann kürzer:

    VB.NET-Quellcode

    1. For Each File As IO.FileInfo In New IO.DirectoryInfo("DeinPfad").GetFiles("*.txtu", IO.SearchOption.AllDirectories)
    2. File.Delete()
    3. Next

    Die Syntax ist nur ein klein wenig anders.

    Alteran
    Danke!
    Funktionirt perfekt!

    //edit:
    ich hab noch eine kleine frage:

    Ich möchte gucken ob auf dem webserver die datei ist
    ich habs so versucht:

    VB.NET-Quellcode

    1. If My.Computer.FileSystem.FileExists("http://meineadresse.org/lalala/" + TextBox3.Text + ".txtu") = True Then
    2. 'Login wird ausgeführt
    3. else
    4. MsgBox("Error username nicht vorhanden")


    aber wenn ich jetzt auf dem button klicke wo der script drinne ist komm garnix

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „alex2009“ ()

    enn ich es so nehme:

    VB.NET-Quellcode

    1. if oWebRequest("http://www.lalala.de/lalalla" + TextBox3.Text + ".txtu") = True Then
    2. 'login
    3. else
    4. 'error
    5. End if


    Kommt:
    Fehler 1 Die Klasse "System.Net.HttpWebRequest" kann nicht indiziert werden, da sie keine Standardeigenschaft hat.