Pfad und Ordner in String ausgeben

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Webtoaster.

    Pfad und Ordner in String ausgeben

    Hallo zusammen

    Ich habe

    VB.NET-Quellcode

    1. Dim Pfad As String = "C:\Temp\"

    und

    VB.NET-Quellcode

    1. Dim Ordner As String = Testordner

    Dabei soll eine Datei nach C:\Temp\Ordnername gespeichert werden. Der Ordnername ist allerdings dynaschisch, er setzt sich u. a. aus dem aktuellen Datum und der Zeit (ss.mm.ss) zusammen. Er entsteht also erst und kann deshalb nicht fest gecodet werden.

    Kann mir jemend sagen wie ich das ganze in eine Variable packe?

    Am Schluss sollte das wohl so aussehen:

    VB.NET-Quellcode

    1. ' Nachricht speichern
    2. oMail.SaveAs(Speicherort & CStr(i) & "_" & _
    3. oMail.Subject & ".txt", olTXT)
    4. j = j - 1
    erstmal kann

    VB.NET-Quellcode

    1. Dim Ordner As String = Testordner
    nicht gut gehen, Testordner gehört in zwei "" Anführungszeichen, da String.
    Und Ich weiß jetzt auch nicht genau wo das problem ist, willst du wissen wie du dir die aktuelle Zeit in eine Variable packst?
    Das geht dann mit

    VB.NET-Quellcode

    1. Dim Zeit As String = TimeOfDay.ToString()


    %P% :thumbup:
    Hello World
    Hi!

    So weit klar....
    Also, konkreter:

    Ich klicke in meinem Outlook Reader auf eine Mail. Diese ist damit selektiert und soll durch einen Buttonklick gespeichert werden. Der Speicherpfad ist fest vorgegeben, hier z. B. C:\Temp.

    Der Speicherordner besteht aus
    a.) dem Absender der Mail und
    b.) einer Kombination aus Datum und Zeit
    Sieht dam in C:\Temp so aus: Google Alerts_29.03.2010_23.32.53
    Nun soll in diesen Ordner die selektierte Mail als TXT gespeichert werden. Die Funktionen getrennt klappen auch;der Ordner wird angelegt, die TXT-Datei auch - allerdings bekomme ich die Datei nicht in den Ordner (Google Alerts_29.03.2010_23.32.53) :huh:

    So habe das mal deklariert:
    Pfad:

    VB.NET-Quellcode

    1. Dim Pfad As String = "C:\Temp\"

    Ordner (Kombi aus Datum & Zeit):

    VB.NET-Quellcode

    1. Dim Ord01 As String = MobjIt(Me.Maillist.SelectedIndex + 1).SenderName
    2. Dim Ord02 As String = (Datum.ToString)
    3. Dim Ordner As String = (Ord01) + "_" + (Ord02)

    Ordner auf lokal erstellen:

    VB.NET-Quellcode

    1. Dim OrdnerName As String
    2. OrdnerName = (fsPath & Ordner) 'Pfad und Namen zusammenstellen
    3. fso = CreateObject("Scripting.FileSystemObject") 'OrdnerObject erstellen
    4. f = fso.CreateFolder(OrdnerName) 'und zum Schluß erstellen

    Nun dachte ich, ich bekomme die selektierte Mail über "Path.Combine", also der Kombi aus "Pfad" und "Ordnername" in den richtigen Ordner gespeichert. Das gelingt aber eben nicht. Das ganze sieht derzeit so aus:

    VB.NET-Quellcode

    1. Dim Pfad_Nachricht As String = Pfad
    2. Dim Ordner_Nachricht As String = OrdnerName
    3. oMail.SaveAs((Path.Combine(Pfad_Nachricht, Ordner_Nachricht)) & CStr(i) & "_" & _
    4. oMail.Subject & ".txt", olTXT)

    Es stellt sich mir allerdings die Frage, ob beim Speichervorgang bekannt ist, wie der Speicherordner heißt... :?: