Daten von Stream zu Stream kopieren
Aus RAD Studio (Deutsch)
Nach oben zu Anwendungen mit VCL-Komponenten entwickeln
Die Erstellung dieser VCL-Anwendung umfasst die folgenden grundlegenden Schritte:
- Erstellen eines Projektverzeichnisses, das eine zu kopierende Textdatei enthält.
- Erstellen eines VCL-Formulars mit einer Schaltfläche.
- Verfassen des Quelltextes, mit dem der String gelesen und in eine Datei geschrieben wird.
- Ausführen der Anwendung.
So erstellen Sie ein Projektverzeichnis und die zu kopierende Textdatei:
- Legen Sie ein Verzeichnis an, in dem die Projektdateien gespeichert werden sollen.
- Erstellen Sie mit einem Texteditor eine einfache Textdatei, und speichern Sie diese unter dem Namen from.txt im Projektverzeichnis.
So erstellen Sie ein VCL-Formular mit einer Schaltfläche:
- Wählen Sie Datei > Neu > Weitere > Delphi-Projekte oder C++Builder-Projekte, und doppelklicken Sie auf das Symbol VCL-Formularanwendung. Der VCL-Formular-Designer wird angezeigt.
- Ziehen Sie aus der Seite Standard der Tool-Palette eine TButton-Komponente in das Formular.
- Geben Sie im Objektinspektor für die Eigenschaften Caption und Name den Wert CopyFile ein.
So schreiben Sie die Prozedur zum Kopieren von Streams:
- Wählen Sie im Formular das Steuerelement Button1 aus.
- Doppelklicken Sie im Objektinspektor auf der Registerkarte Ereignisse auf die Aktion OnClick. Der Quelltext-Editor wird angezeigt. Der Cursor befindet sich bereits im Block der Ereignisbehandlungsroutine TForm1.CopyFileClick (Delphi) oder TForm1::CopyFileClick (C++).
- Setzen Sie in Delphi den Cursor vor das reservierte Wort begin, und drücken Sie dann die Taste EINGABE. Über dem Codeblock wird eine neue Zeile eingefügt.
- Setzen Sie in Delphi den Cursor in die neue Zeile, und geben Sie die folgende Variablendeklaration ein:
var stream1, stream2: TStream;
Geben Sie in C++ die folgende Variablendeklarationen ein:
TStream *stream1, *stream2;
- Setzen Sie den Cursor in den Codeblock, und geben Sie folgenden Quelltext ein:
stream1 := TFileStream.Create('from.txt', fmOpenRead); try stream2:= TFileStream.Create('to.txt', fmCreate); try stream2.CopyFrom(stream1, stream1.Size); finally stream2.Free; end; finally stream1.Free; end;
Für C++
stream1 = new TFileStream( "from.txt", fmOpenRead ); try { stream2 = new TFileStream( "to.txt", fmCreate ); try { stream2->CopyFrom( stream1, stream1->Size ); } __finally { stream2->Free(); } } finally { stream1->Free(); }
So führen Sie die Anwendung aus:
- Speichern Sie die Projektdateien, und wählen Sie dann Start > Start , um die Anwendung zu compilieren und auszuführen. Auf dem Formular wird eine Schaltfläche mit der Bezeichnung CopyFile angezeigt.
- Klicken Sie auf CopyFile.
- Öffnen Sie mit einem Texteditor die neu erstellte Datei to.txt, die sich im Projektverzeichnis befindet. Der Inhalt der Datei from.txt wurde in die Datei to.txt kopiert.