Datei starten mit festem Namen aber variabler Endung

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Manu67100.

    Datei starten mit festem Namen aber variabler Endung

    Hallo community,
    Ich versuche eine datei zu starten die "File" heist, nur um diese zu starten muss ich die endung im Pfad angeben, die aber variabel ist... (also .avi .exe .rtf .odt usw...)
    Wie kann ich diese umgehen / heruausfinden?
    Ich hoffe ihr könnt mir helfen...
    Gruß Manu

    VB.NET-Quellcode

    1. Select Case Ordner
    2. Case 1
    3. Folder = "text"
    4. Extension = "txt"
    5. Case 2
    6. Folder = "tiff"
    7. Extension = "tif"
    8. ' ...
    9. End Select
    10. Dim Path As String = "c:\Temp\" & Folder & "\" DER_NAME_DEINES_FILES & Extension
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke nur gibt es keinen anderen weg? Denn wenn ich alle möglichen extentions angeben will kann dass wochen dauern...
    Datzu würde dies nicht funktionieren da man von dem ordner nicht den typ bestimmen kann...

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

    Manu67100 schrieb:

    Danke nur gibt es keinen anderen weg? Denn wenn ich alle möglichen extentions angeben will kann dass wochen dauern...
    Datzu würde dies nicht funktionieren da man von dem ordner nicht den typ bestimmen kann...


    Jetzt mal Butter bei die Fische: Woran kann der Computer ganz genau und unmißverständlich erkennen das es die richtige Datei ist (egal in welchem Ordner sie liegt)?

    Gruß

    Rainer

    Manu67100 schrieb:

    Danke nur gibt es keinen anderen weg? Denn wenn ich alle möglichen extentions angeben will kann dass wochen dauern...
    Einer von uns beiden hat da wohl Verständnisprobleme, ich bin das aber nicht.
    Mein Code ist ein Beispiel, Du musst Deine Namen und Deine Extensionen reinbasteln.
    Sicher kann man das auch anders lösen, aber das wäre dann ggf. Deine Aufgabe,
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ist sichergestellt das es nur EINE Datei mit der variablen Endung gibt??

    VB.NET-Quellcode

    1. Dim f As FileInfo() = DirectoryInfo.GetFiles("c:\pfad\datei.*")
    2. Dim Text As String = File.ReallAllText(f.FullName)


    Soviel ma zu quick'n dirty pseudo Code, keine garantie das es GENAUSO funktioniert, aber einen anreiz sollte es denke ich dennoch geben.
    Es nämlich ziemlich einfach mit der FileInfo und DirectoryInfo Klasse zu lösen.
    Danke Ich habe aber das Problem gelöst, etwas umständlich aber voll funktionsfähig:

    VB.NET-Quellcode

    1. Try
    2. Dim path As String = CStr(ListView1.SelectedItems.Item(0).Tag)
    3. Dim i As Integer = 0
    4. For Each file In IO.Directory.GetFiles(path)
    5. If IO.Path.GetExtension(file) = ".txt" Or i = 0 Then
    6. If i = 1 Then
    7. Try
    8. Process.Start(file)
    9. Catch ex As Exception
    10. MsgBox("Error by opening the file, the file may cannot be opened on your PC!", MsgBoxStyle.Critical, "Cannot open the file!")
    11. End Try
    12. Else : End If
    13. i = i + 1
    14. Else
    15. Try
    16. Process.Start(file)
    17. Catch ex As Exception
    18. MsgBox("Error by opening the file, the file may cannot be opened on your PC!", MsgBoxStyle.Critical, "Cannot open the file!")
    19. End Try
    20. End If
    21. Next
    22. Catch
    23. MsgBox("Please select a Solution")
    24. End Try


    Naja, den text der msgbox muss ich noch überarbeiten... :S
    Gruß Manu