![]() |
IdFTP Upload: Datei überschreiben
Hi
Ich habe ein Problem beim hochladen von Dateien auf einen FTP Server. Und zwar überschreibt die Indy Komponente die Datei nicht automatisch, wenn diese bereits existiert. Gibt es da irgendeine Option die man da setzen kann? Ich wollte jetzt erstmal versuchen, dass wenn eine Datei schon existiert, dann einfach mit der nächsten Datei fortgefahren wird, die hochgeladen werden soll. Dazu wollte ich die Exception abfangen und dann halt überspringen. Die Fehlermeldung wennn eine Datei bereits existiert lautet: Im Projekt Project1.exe ist eine Exception der Klasse EIdReplyRFCError mit der Meldung '10042008: File exists ' aufgetreten. ich wollte jetzt über
Delphi-Quellcode:
leider kennt er "EIdReplyRFCError" nicht. Auch wenn ich die Unit "IdException" mit einbinde.
try
... except on E: EIdReplyRFCError do continue; end; Also was soll ich jetzt tun? Entweder ich kann da irgendeine property setzen, dass die Datei überschrieben wird oder ich fange die exception ab...nur wie? Gruß |
Re: IdFTP Upload: Datei überschreiben
Delphi-Quellcode:
Hallo erstmal... :-D
IDFTP.Put(SourceFile,DestFile,Append);
Methode Put SourceFile = string DestFile = string - wenn nicht vorhanden wird die Datei erstellt Append = True/False - True hängt an die vorhandene an False überschreibt so funktionierts bei mir... :hi: |
Re: IdFTP Upload: Datei überschreiben
Hallo,
ein anderer Ansatz wäre, zu schauen ob die Datei auf dem Server schon existiert wenn ja diese löschen und dann die neue Übertragung starten. Mit idftp1.size(fileName) >= 0 kannst Du feststellen ob die Datei da ist und mit idftp1.delete(fileName) kannst Du sie löschen.
Delphi-Quellcode:
Ein Option zum Überschreiben der Files kenne ich auch nicht.
if idfp1.size(fileName) >= 0 then
idftp1.delete(fileName); idftp1.put(...); Grüße Klaus |
Re: IdFTP Upload: Datei überschreiben
Zitat:
Es klappt so auch bei mir! Und ich habe gerade gemerkt, dass die exception gar nich beim überschreiben der datei gekommen ist, sondern wenn ich einen Ordner erstelle der schon existiert. @Klaus01 Also die Methode mit datei löschen ist mir auch schon in den sinn gekommen. nur ich wollte halt erstmal wissen, ob es vieleicht doch ne einfachere methode gibt... Auf jeden fall danke euch Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz