Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi String Download (https://www.delphipraxis.net/174182-string-download.html)

Madara Uchiha 8. Apr 2013 15:46

String Download
 
Hallo,

Ich nutze in meinem Programm die idFTP-Componente.
Ich möchte jetzt von meinem FTP Server (Username & Passwort benötigt) einen String (Txt Datei) direkt in ein Memo Herunterladen.
Das ganze soll mir an einer Progressbar angezeigt werden.
Wie kann ich das machen ohne die Datei herunterzuladen und dann per hand zu öffnen? Ich möchte den String gerne direkt in das Memo geladen bekommen?
Bin für Hilfe dankbar :)

DeddyH 8. Apr 2013 15:49

AW: String Download
 
FTP = File Transfer Protocol, ohne die Datei herunterzuladen wird es wohl kaum gehen.

Madara Uchiha 8. Apr 2013 16:04

AW: String Download
 
Hm...
Was ist den die sauberste/effizenteste Methode den Text der auf dem FTP Server liegt in mein Memo zu bekommen? Runterladen und dann öffnen?

Der schöne Günther 8. Apr 2013 16:16

AW: String Download
 
Ich kenne die "idFTP"-Komponente nicht, aber die wird doch wahrscheinlich so komfortabel sein wollen, direkt auf der Platte des PCs der das Programm ausführt eine Datei anlegen zu wollen, oder?

Ich denke mal, das soll verhindert werden (da unnötig).

Sir Rufo 8. Apr 2013 16:30

AW: String Download
 
Zitat:

Zitat von Madara Uchiha (Beitrag 1210629)
Hm...
Was ist den die sauberste/effizenteste Methode den Text der auf dem FTP Server liegt in mein Memo zu bekommen? Runterladen und dann öffnen?

Wenn man es sich abgewöhnt, irgendetwas direkt irgendwo rein laden zu wollen, dann findet man zur aktuellen Problematik auch etwas über die Suchfunktion.

Schritt 1:

Eine Datei von einem FTP-Server holen (bevorzugt als Stream, da das Zwischenspeichern in eine Datei nicht gewünscht ist)

Bei Google suchendelphi ftp download stream

Schritt 2:

Den Stream (der ja nur Text beinhaltet) in einen String umwandeln

Hilfreich ist dabei Delphi-Referenz durchsuchenTStringStream oder man schaut einfach mal, wie das bei Delphi-Referenz durchsuchenTStringList.LoadFromStream gemacht wurde

(oder, wenn es wirklich ein Memo sein soll, dann geht auch
Delphi-Quellcode:
TMemo.Lines.LoadFromStream
)

Nach Schritt 2 sollte das Übergeben dieses Strings an ein Memo, oder Edit, oder ... wohin auch immer selbst führend sein.

DeddyH 8. Apr 2013 16:31

AW: String Download
 
http://www.delphipraxis.net/50240-da...nterladen.html

Madara Uchiha 8. Apr 2013 20:33

AW: String Download
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habs so versucht, aber ich krieg den Fehler access violation:

Code:
procedure TForm1.Button1Click(Sender: TObject);
var
  xFS: TFileStream;
begin
    idftp1.Connect;
  xFS := TFileStream.Create('dokument.txt', fmCreate);
  try
    IdFtp1.get('dokument.txt', xFS);
  finally
    FreeAndNil(xFS);
   xFS.Seek(0, soFromBeginning);
  end;
end;
http://www.delphipraxis.net/attachme...1&d=1365449570

Sir Rufo 8. Apr 2013 20:39

AW: String Download
 
Du spülst das Essen erst im Klo runter und versuchst es dann zu essen?
Ich glaube mich zu erinnern, dass die Reihenfolge eine andere ist :mrgreen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  xFS: TFileStream;
begin
    idftp1.Connect;
  xFS := TFileStream.Create('dokument.txt', fmCreate);
  try
    IdFtp1.get('dokument.txt', xFS);
    xFS.Seek(0, soFromBeginning);

    // Jetzt noch den Stream in einen String oder ins Memo laden

  finally
    FreeAndNil(xFS);
  end;
end;
Aber wolltest du es nicht vermeiden eine Datei zu erzeugen?
Dann nimm doch Delphi-Referenz durchsuchenTMemoryStream

Madara Uchiha 8. Apr 2013 21:22

AW: String Download
 
Zitat:

Zitat von Sir Rufo (Beitrag 1210680)
// Jetzt noch den Stream in einen String oder ins Memo laden

Ich hab das so versucht... Geht nicht, sieht auch iwie falsch aus :x
Delphi-Quellcode:
memo1.Text:=xfs.tostring

Sir Rufo 8. Apr 2013 21:30

AW: String Download
 
Delphi-Quellcode:
Memo1.Lines.LoadFromStream( xFS );


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:51 Uhr.
Seite 1 von 2  1 2      

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