marcoit
Goto Top

Visual Basic Dateiupload auf FTP mit formatiertem Datum

Hallo Zusammen,
kann mir vielleicht wer helfen bei der Formatierung des Datums in Visual Basic?

Morgen Zusammen,

Ich habe einen Script zusammen gestellt, mit dem ich jetzt erfolgreich eine Datei (leider erst nur durch eine feste Angabe) uploade.
Jetzt habe ich mir gedacht, dass ich die Datei mit dem aktuellen Datum hochlade:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        ' Zugangsdaten  
        Dim quell As String
        Dim ziel As String
        Dim user As String
        Dim pwd As String
        Dim datum As Date
        Dim filename As String

        ' Requests  
        Dim req As FtpWebRequest
        Dim resp As FtpWebResponse
        Dim sr As IO.StreamReader

        quell = ("quellpfad\testdatei.txt")  
        datum = FormatDateTime(TimeOfDay, DateFormat.LongDate)
        filename = quell + datum

        ziel = ("pfad des ftp servers" + filename)  
        user = ("user")  
        pwd = ("geheim")  

        ' Upload mit festen Angaben  
        My.Computer.Network.UploadFile(quell, ziel, user, pwd, True, 500)

        ' Ausgabe des Inhaltes der auf dem FTP Datei  
        req = FtpWebRequest.Create(ziel)
        resp = req.GetResponse()
        sr = New IO.StreamReader(resp.GetResponseStream())
        MsgBox(sr.ReadToEnd())

    End Sub

Wenn ich dann ausführe, erhalte ich die Fehlermeldung, dass der Server Fehler 505 zurückgibt. Ich glaube das liegt daran, dass ich mit Dateformat.generalTime ein Sonderzeichen verwende und der Server das nicht zulässt.
Hier ein Screenshot vom Fehler:

3ea6319d74a7e92fba2043ef17250b88

Jetzt steht unter MSDN, dass shorttime longtime usw. mit einer für mich nicht ganz verstanden Beschreibung.
Ich will nur wissen, wie ich das Datum formatieren kann, so dass auf dem FTP Server geschreiben wird,

Testdatei_20111214_Uhrzeit.txt

Hat da wer eine Idee wie ich das am besten ausgeben lassen kann?!

Gruß Marco

EDIT:

Habe gerade gemerkt, dass nach dem Aufruf der Quelldatei das Datum eingeschrieben werden muss:

filename = ("testdatei_" + datum + ".txt")  
ziel = ("ftp pfad/" + filename)  

Somit wird die Testdatei mit Datum eigentlich korrekt eingetragen allerdings erhalte ich noch immer den selben Fehler...
Kommentar vom Moderator Biber am 14.12.2011 um 12:38:47 Uhr
Zitat von @MarcoIT:
Allerdings glaube ich langsam das der FTP Server mir das nicht gesattet eine Datei umzubennen...
Set /a rgc +=1
#782

Irgendwann stelle ich hier mal im Forum ein Schild "Umbennen nicht gesattet!" auf ....*seufz*

Content-Key: 177669

Url: https://administrator.de/contentid/177669

Ausgedruckt am: 28.03.2024 um 12:03 Uhr

Mitglied: Logan000
Logan000 14.12.2011 um 10:11:13 Uhr
Goto Top
Moin Moin

Ein Msgbox(filename) in Zeile19 und du wärst warscheinlich alleine darauf gekommen.

Versuchs mal so:
...
Dim datum As String
...
        quell = ("quellpfad\testdatei.txt")   
        datum = FormatDateTime(Now, DateFormat.LongDate).to string
        datum = Replace(datum," ","_") ' leerzeichen durch unterstrich ersetzen  
        datum = Replace(datum,".","") ' Punkte entfernen  
        datum = Replace(datum,":","") ' Doppelpunkte entfernen  
        filename = Replace(quell,".",datum + ".")  
        msgbox (filename)
...

Gruß L.
Mitglied: MarcoIT
MarcoIT 14.12.2011 um 10:21:26 Uhr
Goto Top
Zitat von @Logan000:

Ein Msgbox(filename) in Zeile19 und du wärst warscheinlich alleine darauf gekommen.

Bevor ich mein EDIT hinzugefügt habe, habe ich das mal mit MsgBox gemacht ;).

Danke dir Logan!!
Allerdings glaube ich langsam das der FTP Server mir das nicht gesattet eine Datei umzubennen...
Prinzipiell MUSS das gehen!

Ich erhalte noch immer die selbe Fehlermeldung...

Jedenfalls danke ich Dir vielmals!!
Mitglied: MarcoIT
MarcoIT 14.12.2011 um 10:25:50 Uhr
Goto Top
So!

Geht alles!

Habe
filename = ("testdatei_" + datum + ".txt")  

geändert und nun kommt auch keine fehlermeldung mehr!
Danke nochmals Logan!!