C ++ von Stream -Funktionen

C ++ von Stream -Funktionen
Die Daten werden lokal auf Computern über die Dateibehandlung gespeichert. Wir können den Inhalt in den sekundären Speicher einfügen, indem wir Dateien verwalten.

Der beste Weg, um Dateien zu handhaben

Die folgenden Schritte müssen durchgeführt werden, um Dateien zu verarbeiten:

  • Geben Sie der Datei einen Namen
  • Öffne einen Ordner.
  • Geben Sie Informationen in die Datei ein.
  • Nehmen Sie Daten aus der Datei heraus.
  • Eine Datei stilllegen.

Streams in c++

Wir geben Eingaben in den Quellcode an und der vorhandene Code gibt die Ausgabe zurück. Der Begriff „Stream“ bezieht sich sowohl auf den Strom von Bytes, die dem Hauptprogramm als Eingabe bereitgestellt werden, als auch auf die Reihe von Bytes, die vom Quellcode zurückgegeben wurden. Mit anderen Worten, Streams sind mehr als nur eine Folge von Daten, die fließen.

"Konsoleneingangs- und Ausgangsbetrieb" bezieht. "Disk -Eingangs- und Ausgangsbetrieb" bezieht.

Dateistream -Prozedurenklassen

Eine Sammlung von Klassen in den C ++ - Eingangs- und Ausgangsmodulen geben die Dateibehandlungstechniken an. Es würde die Ifstream, Ofstream und Fstream der Klassen enthalten. Solche Klassen stammen aus der FStream -Klasse und der damit verbundenen iOstream -Klasse ab. Jede Anwendung, die Dateien verwenden.

iOS
Diese Kategorie ist das Hauptmodul für alle anderen Klassen in diesem hierarchischen System. iOS zeigt den Eingabe-Output-Stream an.

Die für Eingabe- und Ausgangsfunktionen erforderlichen Ressourcen, die von allen anderen Unterklassen verwendet werden, werden in dieser Klasse bereitgestellt.

iStream
Der Eingangsstrom wird als iStream bezeichnet. Dieser Typ ist ein Nachkomme der "iOS" -Klasse. Die Stream -Eingabe wird von dieser Kategorie verwaltet.

Diese Klasse hat den Extraktionsbetreiber (>>) überschrieben, um Eingabestreams für die Implementierung eines Codes zu verwalten.

Die Eingabemethoden get (), getline () und read () sind in diesem Modul angegeben.

Ostream
Ostream bezieht sich auf den Ausgangsstrom. Die Klasse 'iOS' ist ein Nachkomme dieses. Der Ausgangsstrom wird von dieser Komponente gesteuert.

Streambuf
Der zur Steuerung der Eingangs- und Ausgangsflüsse verwendete Puffer wird in diesem Modul über einen Zeiger verwiesen.

fstreambase
Diese Klasse bietet Funktionen, die für Dateiströme vorherrschen. Es fungiert als Grundlage für die Kategorien: fstream, ifstream und von Stream.

Die Methoden Open () und Close () sind in diesem Modul enthalten.

Ifstream
Eingabeberationen werden von diesem Typ angeboten. Die Open () -Methode ist vorhanden und die Eingabeoption ist üblich. Es erwirbt die Methoden read (), such (), Tell (), get () und getline () aus dem iStream.

Ofstream
Diese Klasse enthält Funktionen für die Ausgabe. Es enthält die Standardausgangsmethode für die Open () -Methode. Es behandelt die Ostreams put (), write (), such () und rett () Methoden.

fstream
Die Fähigkeit für mehrere Eingangs- und Ausgangsfunktionen wird von dieser Klasse behandelt. Durch iOstream importiert es jede Methode aus den Schnittstellen von iStream und Ostream.

Dateibuf
Das Einstellen der Dateipuffer zum Lesen und zum Schreiben des Textes ist seine Funktion. Die Methode zur Dateipufferkomponenten kann verwendet werden, um auch die Größe der Datei zu berechnen. Drei Klassen-Fream, Ifstream und OfStream sind in der Fstream-Vorlage vorhanden und werden hauptsächlich in C ++ verwendet, um mit Dateien umzugehen.

  • Ofstream: Ein Datei-Schreibstreamtyp.
  • Ifstream: Es ist eine Klasse zum Lesen von Dateien aus Streams.
  • Fstream: Es ist eine Art Stream, der/von Dateien lesen und schreiben kann.

Betrieb von C ++ Ofstream

Die iOstream -Header -Datei mit den Methoden CIN und Cout wird verwendet, um aus der Eingabequelle zu lesen und in die Ausgabedatei zu schreiben. In ähnlicher Weise wird die C ++ - Header -Datei fstream verwendet, um Inhalte aus Dateien zu lesen und Informationen in Dateien zu schreiben. Die drei Datenklassen von Stream, Ifstream und Fstream werden von der Header -Datei fstream angeboten. Wir verwenden OfStream, indem wir das Modul in den Code integrieren, auch wenn es wichtig ist, den Ausgabedateistrom darzustellen, eine Datei zu generieren und Daten in die Datei zu schreiben. Die Klasse Ostream ist ein Nachkomme von Stream.

Syntax
Die Syntax für C ++ von Stream ist wie folgt:

# ofstream var_name;
var_name.öffnen (file_name);

Der Name der erforderlichen Variablen wird durch den 'var_name' dargestellt. Die Datei, auf die zugegriffen wird, wird als "Datei_Name" bezeichnet.

Der Ausgangsstream Open -Methode

Ein Ausgabedateistrom (Ofstream) sollte mit einem bestimmten Dateisystem im Konstruktor oder der offenen Methode verknüpft werden, damit es verwendet werden kann. Benutzer können die identische Stream -Instanz mit mehreren Dateien verwenden, wenn wir die offene Methode verwenden. Die zur Identifizierung der Datei verwendeten Parameter ähneln allen Szenarien.

Normalerweise wird ein offener Modusparameter angegeben, wenn eine mit einem Ausgabestream verbundene Datei geöffnet wird. Diese Attribute, die im Eingangs-Output-Stream-Modul Aufzähler waren.

Der Setzen Methode

Ein Buchstaben wird durch die Put -Methode an den Ausgabestream geschrieben.

Der Schreiben Methode

Ein Speicherblock wird über die Schreibmethode in einen Ausgabedateistrom geschrieben. Die Anzahl der dargestellten Bytes wird durch den Größenparameter bereitgestellt. Die gesamte Klassenstruktur wird geschrieben, weil die Schreibmethode nicht endet, wenn sie auf ein Nullelement stößt. Ein Zeichenbefehl und die Anzahl der zu schreiben, die zu schreiben sind, sind die beiden Eingänge, die die Funktion benötigt. Nehmen Sie kurz vor der Referenz des Strukturelements die entsprechende Konvertierung in char * zur Kenntnis.

Die Methoden von Seek und TellP

Ein intrinsischer Zeiger, der den Pfad der kommenden Daten schreiben, wird von einem Ausgabedateistrom verwaltet. Dieser Port wird vom SeekP-Funktionsaufruf erstellt, der auch zufällige Speicherdateien zurückgibt. Die Dateiadresse wird durch den TellP -Funktionsaufruf erhalten.

Die enge Funktion

Die Speicherdatei des Ausgabedatei -Streams wird mithilfe des Aufrufs schließen. Um die gesamte Ausgabe an das System zu beenden, sollte die Datei geschlossen werden. Bei Bedarf beendet der Ofstream Destructor die Datei für Sie. Wenn wir jedoch eine neue Datei für dieselbe Stream -Klasse öffnen möchten, werden wir die schließende Methode verwenden. Wenn der Konstruktor oder die offene Mitgliedsmethode die Datei öffnet, würde der Ausgabestream Destructor in der Datei des Streams nicht mehr funktionieren? Wir müssen die Datei manuell schließen, wenn wir den Anhang -Methodenaufruf verwenden oder einen Dateinamen für eine geöffnete Datei zum Konstruktor angeben.

Mitgliedskonstanten

Verschiedene Mitgliedskonstanten für die Ofstream -Funktionen sind:

Mitglied konstant: in *

Es repräsentiert die Eingabe.

Datei zum Lesen zugänglich. Eingabeberationen werden vom intrinsischen Stream -Puffer bereitgestellt.

Mitglied konstant: out

Es repräsentiert die Ausgabe.

Datei zugänglich für schriftliche Formular: Die Ausgabeberationen werden vom zugrunde liegenden Stream -Puffer behandelt.

Mitgliedskonstante: binär

Es zeigt den binären Wert.

Anstatt Text zu verwenden, werden Operationen im Binärmodus durchgeführt.

Mitgliedskonstante: Ate

Es bedeutet am Ende.

Der Endpunkt der Datei beginnt der Ausgangsplatz.

Mitgliedskonstante: App

Es repräsentiert die Append.

Die aktuellen Daten der Datei werden zu jedem Ausgabebetrieb hinzugefügt, der stattfindet.

Mitgliedskonstante: Trunc

Es zeigt die Kürzung an.

Kurz vor der Öffnung der Datei wurden alle Daten entfernt.

Beispiel 1

In diesem Beispiel würden wir sehen, wie man eine Datei in C erstellt++.

Zu Beginn dieses Code fügen wir Bibliotheken hinzu, die für die Verwaltung der Dateien wie Erstellen, Hinzufügen, Aktualisieren und Löschen der Dateien verantwortlich sind. Fügen Sie dann den Namespace -Standard hinzu. Danach starten wir unsere Haupt- () -Funktion. In der Funktion main () erhalten wir unsere Datei mit der Funktion von OfStream (), mit der die neue Datei im C ++ - Dateisystem erstellt wird. In den Parametern dieser Funktion übergeben wir unsere Datei, indem wir den richtigen Namen der Datei geben.

Denken Sie daran, dass die Codedatei und die Textdatei an demselben Ort platziert werden müssen. Hier schreiben wir die Bedingung, dass, wenn die Datei besteht. Wenn die Datei nicht vorhanden ist, erstellen wir die Datei und schreiben einen Text in dieser Datei. Anschließend schließen wir die Datei, indem wir die Funktion close () mit dem Dateinamen aufrufen, wie Sie in den beiden folgenden Ausgängen angezeigt werden können. Wir führen den Code zum ersten Mal aus und die Datei wird erstellt, aber wenn wir den Code beim zweiten Mal ausführen, gibt er uns die Nachricht, dass die Datei vorliegt.

Wenn die definierte Datei vorhanden ist, erwerben wir diese Art von Ergebnis.

Beispiel 2

In diesem Fall würden wir die Daten in die Datei schreiben.

Wie wir wissen, wird die Funktion von Stream auch zum Schreiben, Aktualisieren oder Bearbeiten der Textdatei im Dateisystem von C verwendet++. Hier schreiben wir also einen Code, um einen Text in eine Dokumentdatei zu schreiben. Zu diesem Zweck haben wir unsere notwendigen Bibliotheken, die und die erste Bibliothek, die die Definition von Eingabe-Output-Funktionen enthält. Dann verwenden wir den Standard des Namespace und schreiben die Haupt- () -Funktion auf.

Danach erhalten Sie die Datei, die wir mit Hilfe unseres letzten Code erstellt haben. Durch die Verwendung der Funktion von Stream () verwaltet die Funktion alle unsere Vorgänge in Bezug auf die Einreichung in dieser Sprache. Wir initialisieren eine Datei und übergeben unsere Textdatei an sie, indem wir die Funktion open () verwenden und die Textdatei in den Parametern dieser Funktion übergeben. Dann geben wir einen Satz an die Datei weiter und zeigen eine Nachricht an, die "Datei erfolgreich schreiben" ist. Rufen Sie dann die Funktion close () mit dem Dateinamen auf, um unsere Textdatei zu schließen, die zu Beginn des Code geöffnet wurde, um einen Text in dieser Datei hinzuzufügen.

Beispiel 3

In diesem Fall sehen wir, wie man prüft, ob die Datei leer ist oder nicht.

In der vorherigen Datei haben wir unseren Text in der Datei hinzugefügt, aber nicht angezeigt. Daher können wir zuerst überprüfen, ob unsere Datei leer ist oder nicht, indem wir den Inhalt der Datei anzeigen. Wenn es leer ist, fügen wir einen Text hinzu und zeigen die Daten erneut in der Konsole an. Die erste Zeile enthält unsere Header -Dateien, die unsere unterschiedlichen Funktionen im Zusammenhang mit Eingabe und Ausgabe sowie mit unseren Dateien unterstützen. Wir fügen unseren Namespace -Standard hinzu. In der nächsten Zeile starten wir die Funktion main (), bei der wir alle unsere Funktionen durch das Schreiben des Codes ausführen.

Zunächst nennen wir die Funktion von Stream () und initialisieren die Datei. Rufen Sie dann die Funktion open () an, um die Datei zu übergeben, indem Sie den Dateinamen den Parametern angeben. Geben Sie es dann der Dateivariablen, die wir zuvor erstellt haben. Als nächstes werden die Daten der Datei mit der 'while' -Schleife verwendet. In der Bedingung einer Weile -Schleife rufen wir die GET -Zeilenfunktion auf, mit der die Textdatei gelesen wird. Wenn diese Funktion in den Parametern unsere Datei sowie eine Zeichenfolge senden, die alle Daten speichert. In der while -Schleife zeigen wir unsere Datei an und schließen die Datei, indem wir die Funktion close () aufrufen.

Beispiel 4

Bearbeiten wir in dieser Abbildung die Daten der Datei.

Im vorherigen Code zeigen wir, wie Sie sehen können, unsere Datei an. Dann versuchen wir, diese Daten anzuzeigen. Erstens schreiben wir unsere Bibliotheken. Diese Bibliotheken helfen uns, Funktionen aufzurufen, um eine Aktion an der Stelle eines komplexen Code oder Algorithmen auszuführen, um in allen Codefeldern komplizierte Funktionen zu erfüllen. Diese Bibliotheken waren und . Dann fügen wir Namespace -Standards hinzu. Bevor wir den Code starten, rufen wir die Funktion main () auf, da wir unseren gesamten Code in dieser Funktion schreiben müssen. In der main () -Funktion haben wir als erstes die Datei mit unserer Funktion von Stream () initialisiert.

Anschließend übergeben wir unsere Textdatei an diese Dateivariable, indem wir die Funktion open () aufrufen. Wenn wir diese Funktion nennen, haben wir Dinge getan. Zunächst übergeben wir unsere Textdatei an die Dateivariable und öffnen die Textdatei. In der nächsten Zeile fügen wir der zuvor geöffneten Textdatei einige Textdaten hinzu. Nach dem Einlegen der Daten schließen wir unsere Datei, indem wir die Funktion close () mit der Textdateivariable hinzufügen. Hier haben wir eine Zeichenfolge initialisiert. Der Zweck dieser Zeichenfolge besteht darin, die Daten aus der oben erstellten und aktualisierten Datei zu erhalten. Wir nennen also unsere ifStream () -Funktion, die für die Anzeige der Daten in der Form von Text in der Datei sowie mit dieser Funktion verantwortlich ist.

Jetzt zeigen wir die Daten an. Zu diesem Zweck verwenden wir also eine 'während' Schleife. Wir rufen die Funktion getline () auf, um die Zeilen aus unserer Textdatei abzurufen, die wir in die Parameter dieser Funktion übergeben haben. In dieser Schleife verwenden wir 'Cout', um die Zeichenfolge zu drucken, die wir in der Funktion getline () übergeben. Wenn die Anzeige abgeschlossen ist, endet die Schleife nach dem Schließen der Datei, indem Sie die Funktion close () mit unserer Textdatei aufgerufen.

Abschluss

Im ersten Abschnitt dieses Artikels haben wir erläutert, mit welcher Dateibehandlung in der C ++ - Programmiersprache. Wir haben auch über die entsprechende Methode zum Verwalten von Dateien und die Funktionen der Dateistreamklassen gesprochen. Die OfStream () -Methode wurde dann in verschiedenen Programmen verwendet, die wir implementiert haben. Im ersten Programm wurde eine Datei erstellt. In der nächsten Instanz wird der Inhalt dann in die Datei geschrieben. Als nächstes bestimmen wir, ob die Datei leer ist. Wir müssen die Datei am Ende aktualisieren.