Announcement

Collapse
No announcement yet.

Umbenennen mehrerer Dateien auf dem FTP-Server

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Umbenennen mehrerer Dateien auf dem FTP-Server

    Hallo, ich habe folgenden Code zum Umbenennen mehrerer Dateien auf einem FTP-Server:

    Code:
    	
    Dim Request As FtpWebRequest = WebRequest.Create(TextBox6.Text)
                        Dim Response As FtpWebResponse
     
                        Request.Credentials = New NetworkCredential(TextBox2.Text, _
                          TextBox3.Text)
                        Request.Method = WebRequestMethods.Ftp.Rename
                        Request.Timeout = (60000 * 1) ' 60000 * No of minutes
                        Request.RenameTo = "*.sav"
     
                        Response = Request.GetResponse()
                        Response.Close()
    Ich denke in der Formatierung liegt das Problem, weil ich ja mehrere Datein umbenennen möchte, wobei mich nur der Datentyp interessiert und nicht der Name. Folgende Fehlermeldung kommt bei Zeile "Response = Request.GetResponse()":
    Code:
    Der Remoteserver hat einen Fehler zurückgegeben: (550) Datei nicht verfügbar (z.B. nicht gefunden oder kein Zugriff).

    Als Anfängerin ist das ziemlich schwer und ich finde einfach keine Hilfe!! Ich wäre so dankbar, wenn mir jemand helfen könnte..

    Liebe Grüße

  • #2
    Intern erfolgt über FTP das Umbennenen mit zwei Kommados

    RNFR ReName FRomfilename
    RNTO ReName TOfilename

    die hintereinander gesendet werden. Vermute mal, da ist nix mit Wildcards.
    Alle Dateien einlesen und jede direkt umbenennen
    Christian

    Comment


    • #3
      Geht das dann nicht, so wie ich das möchte? Kann mir nicht vorstellen, dass es so etwas nicht gibt....

      Comment


      • #4
        Kann mir nicht vorstellen, dass es so etwas nicht gibt
        RNFR:
        This command specifies the old pathname of the file which is to be renamed. This command must be immediately followed by a "rename to" command specifying the new file pathname.

        Und irgendwie passt das zu deiner Fehlermeldung, dass er eine Datei Names "*.sav" nicht finden kann
        Christian

        Comment


        • #5
          Mmh, aber er soll ja auch keine .sav finden, er soll die Dateien in *.sav umbenennen....
          Also hast du auch keine Erfahrung mit dem Umbenennen? Ach, das ist ja saudoof.....

          Comment


          • #6
            Was spricht dagegen aus
            TextBox6.Text
            den Filenamen zu extrahieren und nach .sav zu übernehmen, also eine neue Extension zu vergeben?
            Christian

            Comment


            • #7
              Wie meinst du das? Kannst du das vielleicht ein bißchen für Anfänger erklären?

              Ich bin noch nicht so fit in solchen Dingen...

              Comment


              • #8
                Wenn in TextBox6 drin steht

                daten.txt

                und diese soll nach

                daten.sav

                umbenannt werden, dann extrahierst du die Zeichen bis zum Punkt und hängst ein "sav" ran.
                Christian

                Comment


                • #9
                  Und was müsste ich dann am Code ändern? Ich lerne von Beispielen.. ich bin alles andere als zu faul oder so, aber im Internet finde ich spezifisch nichts zu meinem Problem....

                  Comment


                  • #10
                    Net hat keine Stringverabeitung mit Teile von Strings extrahieren, Strings verbinden?
                    Christian

                    Comment


                    • #11
                      Originally posted by Christian Marquardt View Post
                      Net hat keine Stringverabeitung mit Teile von Strings extrahieren, Strings verbinden?
                      Das war natürlich eine rhetorische Frage; Antwort: String.Substring, String-Addition, String.Concat.

                      @Angelika
                      Für die Arbeit mit Dateien, Dateinamen und Pfaden bieten die Klassen File, Path, Directory viele statische Methoden. Für die "erweiterte" Arbeit mit einer bestimmten Datei oder Verzeichnis gibt es FileInfo, DirectoryInfo.

                      Jetzt musst Du nur noch in der SDK-Doku/MSDN für diese Klassen unter "Alle Member" die Beschreibungen durchlesen; dann findest Du ganz schnell diese Methode:
                      Ändert die Erweiterung einer Pfadzeichenfolge.
                      Gruß Jürgen

                      Comment


                      • #12
                        Und wie müsste ich das machen, anhand meines schon vorhandenen Codes?

                        Comment


                        • #13
                          Das was jetzt kommt nennt man

                          - in der Doku nachschauen
                          - probieren
                          - verwerfen
                          - neu machen

                          oder kurz: PROGRAMMIEREN

                          Und wie müsste ich das machen, anhand meines schon vorhandenen Codes?
                          Du hast jetzt also in der von Jürgen vorgeschlagenen Doku nachgesehen?
                          Was genau ist unklar?
                          Christian

                          Comment


                          • #14
                            Anscheinend bin ich zu doof dafür, ich finde nur Infos wie ich eine bestimmte Datei umbenennen kann, mehr leider nicht....
                            Ich bin alles andere als zu faul etwas auszuprobieren.... nur irgend wann möchte man doch einen Hinweis o.Ä. haben, damit man daraus lernen kann...

                            Comment


                            • #15
                              Hallo Angelika,

                              anscheinend muss es ganz deutlich gesagt werden: Du kannst nicht eine Menge von Dateien mit einem Befehl umbenennen, sondern nur jede Datei einzeln; und Du musst für jede einzelne Datei den vollständigen alten Namen und den vollständigen neuen Namen angeben.

                              Also kannst Du nur so vorgehen (Pseudo-Code):
                              Code:
                              hole alle Dateinamen in eine Liste
                              für jeden(Dateiname in der Liste) tue dieses:
                                 erzeuge den neuen Dateinamen durch Änderung der Extension
                                 rufe den Umbenennen-Befehl auf für den aktuellen Dateinamen
                              ende foreach
                              Das sollte aber jetzt wirklich genügen. Jürgen

                              Comment

                              Working...
                              X