FileNotFound trotz exaktem Pfad

  • VB.NET

Es gibt 15 Antworten in diesem Thema. Der letzte Beitrag () ist von mikeb69.

    FileNotFound trotz exaktem Pfad

    Hallo.

    Ich habe derzeit ein Problem:

    Wenn ich versuche dateien aufzurufen, bekomme ich ständig den "FileNotFound" Error.
    Dies ist mein Code:

    Quellcode

    1. Dim textladen As String
    2. textladen = My.Computer.FileSystem.ReadAllText("C:\Users\Username\Documents\Visual Studio 2008\Projects\Project\Project\bin\Debug\texte\text\text1.txt")


    Da kommt z.B.: der Error. Wenn ich aber genau diesen Pfad kopiere und ihn manuell, ohne VB "ausführe" öffnet sich aber diese Textdatei.
    Ich habe schon verschiedene Codevariationen ausprobiert, bei jeder kommt dieser Error.


    Ich hoffe ihr könnt mir helfen

    Danke

    Gruß
    Kann sein, dass Du diesen Pfad anders ansprechen musst, da er ein SpecialFolder ist, der vom system verwaltet wird.

    VB.NET-Quellcode

    1. Dim pp As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
    Schreib Dim pp As String = Environment.GetFolderPath(Environment.SpecialFolder und sieh Dir an, was Dir die Umgebung für Vorschläge macht. Musst ein wenig probieren.
    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 für die schnelle Antwort!
    Ich habs jetzt mal so probiert:

    Quellcode

    1. Dim pfad As String = IO.File.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Visual Studio 2008\Projects\Project\Project\bin\Debug...")


    Jetzt kommt die Meldung das ein Teil des Pfades nicht gefunden werden kann!

    Gruß

    VB.NET-Quellcode

    1. Dim pfad As String = IO.File.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Visual Studio 2008\Projects\Project\Project\bin\Debug...") ' was sollen die 3 Punkte hier?
    Was soll das?
    Mach Dir einen Haltepunkt auf die Zeile, sieh Dir an, was da rauskommt.
    Das Problem musst Du an Deinem Rechner lösen, nicht hier im Forum!

    VB.NET-Quellcode

    1. Dim pfad As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Visual Studio 2008\Projects\Project\Project\bin\Debug..." ' was sollen die 3 Punkte hier?
    2. IO.File.ReadAllText(pfad)
    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!
    Die 3 Punkte bedeuten so viel wie "usw." :D

    Ich habe den exakten Pfad gerade nicht kopieren können, deshalb habe ich ihn etwas gekürzt. Aber es funktioniert trotzdem nicht. -> Gleicher fehler.

    Kann das sein dass das mal wieder irgendetwas mit Win7 zutun hat?


    Danke
    Gruß

    RodFromGermany schrieb:

    Mach Dir einen Haltepunkt auf die Zeile, sieh Dir an, was da rauskommt.
    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!
    Also ich hab das jetzt mal selbst getestet unter Win7 64 bit.

    Funktioniert alles einwandfrei!

    VB.NET-Quellcode

    1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    2. If IO.File.Exists("C:\Users\ich\Documents\Visual Studio 2008\Projects\Project\Project\bin\Debug\texte\text\text1.txt") Then
    3. Dim textladen As String = My.Computer.FileSystem.ReadAllText("C:\Users\ich\Documents\Visual Studio 2008\Projects\Project\Project\bin\Debug\texte\text\text1.txt")
    4. MsgBox(textladen)
    5. Else
    6. MsgBox("nicht vorhanden")
    7. End If
    8. End Sub


    Versuchs mal so und schau ob der pfad überhaupt existiert.

    MFG
    GOOGLE ist mein Meister :)

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

    Hallo Brady,

    der Fehler hat nichts mir einer leeren Textdatei zu tun.

    Ich würde dir, da du Breakpoints scheinbar nicht magst, mal zu folgendem raten.

    Verwende das schon erwähnte Environment getue und Path.Combine zum zusammensetzen der Pfade.

    VB.NET-Quellcode

    1. Dim pfad As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "Visual Studio 2008\...\bin\Debug...")


    Gruss

    mikeb69