Zufallszugriffsdateien in C ++

Zufallszugriffsdateien in C ++

Das Implementieren des Codes einer zufälligen Datei in C ++ ist keine leichte Aufgabe, insbesondere im Linux -Betriebssystem, kann jedoch erfolgen, wenn Sie Dateiverarbeitungsfunktionen haben. In diesem Artikel wird eine einfache Dateistruktur verwendet, die von der C ++ - Programmiersprache unterstützt wird, indem sie Quellcodes im Linux -Betriebssystem verwenden.

Diese Idee wird mit dem Linux -Betriebssystem erklärt. Daher müssen Sie Ubuntu auf Ihrem PC installiert und konfiguriert haben. Nachdem Sie virtuelles Box heruntergeladen und installiert haben, müssen Sie es konfigurieren. Jetzt müssen Sie die Ubuntu -Datei dazu hinzufügen. Sie können auf die offizielle Website von Ubuntu gehen und die entsprechende Datei für Ihren Computer- und Betriebssystem herunterladen. Die Installation dauert mehrere Stunden, und dann müssen Sie es auf dem virtuellen System einrichten.

Wir haben Ubuntu 20 verwendet.04, aber Sie können die neueste Version verwenden. Sie benötigen einen Texteditor und Zugriff auf eine Linux -Konsole, um die Implementierung abzuschließen, da wir das Ergebnis der Quellcodes auf dem Terminal über die Abfrage sehen können.

Zufallsdateizugriff

Wir erstellen eine Anwendung, um Informationen zu Dateien zufällig zugreifen. In einer Datei greifen wir auf die Informationen zu, und der Zufallszugriff bietet dem Benutzer, den Datensatz sofort abzurufen. Dies erfolgt in beliebiger Reihenfolge. Der Zufallszugriff bietet auch die Benutzerfreundlichkeit, um die Daten sofort zu lokalisieren. Dieses Phänomen ist in vielen Aspekten unseres täglichen Lebens nützlich. Zum Beispiel wird dieses Konzept im Bankwesen, Reservierungssysteme. C ++ - Programmiersprache ist nicht daran beteiligt, einer Datei eine Struktur aufzuerlegen. Der Zufallszugriff soll also von vorne anfangen. Für diesen Zweck werden viele Techniken verwendet, aber am einfachsten ist es, den Datensatz mit einer festen Länge zu verwenden.

In C ++ kann das Dateisystem drei Klassen verwenden, die in der Stream -Header -Datei vorhanden sind.

  • Ofstream: Es ist eine Klasse von Streams, die uns dazu bringt, auf die Dateien zu schreiben.
  • Ifstream: Es wird verwendet, wenn der Benutzer die Daten nur aus der Datei lesen möchte.
  • Fstream wird sowohl für Eingabe- als auch für die Ausgabe von Streams zur und von der Datei verwendet.

Jetzt gehen wir auf einige Beispiele, um das Zufallszugriffskonzept zu erklären.

Beispiel

Dieses Beispiel befasst sich mit dem Öffnen der Datei und dem Hinzufügen von Daten dazu. Nach der Addition werden die Daten als Ausgabe am Terminal angezeigt. Die Dateiöffnung hängt von zwei Situationen ab. Einer öffnet die bereits vorhandene Datei und schreibt Daten darin. Während eine andere Bedingung eine neue Datei erstellt, um den darin enthaltenen Datensatz hinzuzufügen. Zunächst erläutern wir die Situation, in der eine bereits vorhandene Datei durch Hinzufügen der Daten bearbeitet wird. Zwei Bibliotheken von „iOstream“ und „fstream“ werden verwendet.

# enthalten

Im Hauptprogramm erstellen wir Objekte von „Ofstream“ aus. Dieses Objekt wird verwendet, um die Datei zu öffnen.

# Fout.Datei öffnen.txt")

Datei.txtIst eine bereits erstellte Datei. Diese Datei wird geöffnet. Wir haben die Datei mit den Daten verwendet, sodass in der Situation unser C ++ - Programm die bereits vorhandenen Daten in der Datei löschen soll, und dann werden die neuen Daten erfolgreich hinzugefügt. Hier wird eine Weile die Schleife verwendet, um die Öffnung der Datei zu gewährleisten. Eine Sache, die hier erwähnt werden sollte, ist, dass unsere Datei frühere Daten enthält. Es müssen zuerst die Datei angezeigt werden, bevor die neuen Daten über das Terminal geschrieben werden.

Diese 4 Zeilen sind bereits vorhanden. Diese werden jedoch gelöscht, wenn der neue Datensatz eingegeben wird. Jetzt zum Quellcode zurückkehren.

Wenn die Datei ausgeführt wird, wird der Benutzer aufgefordert, seine Daten einzugeben. Da die Daten in das Terminal eingegeben werden, wird dieser Datensatz auch zur Datei hinzugefügt.

# GetLine (Cin, Linie);

Wenn das Programm ausgeführt wird, fügt der Benutzer die Daten weiter hinzu. Um die Aufzeichnung zu beenden oder zu beenden, muss man über eine solche Bedingung verfügen, um die Schleife zu stoppen. Wir verwenden also hier eine Ifatement. Dies prüft, ob der Benutzer in das Schlüssel „Q“ eingibt, das beendet wird, und das System addiert keine Daten weiterhin weiter.

If (Zeile == "q")

Brechen;

Die Anweisung "Break" wird verwendet, um mehr Ausführung zu stoppen. Wie wir beschrieben haben, werden die Daten aus dem Terminal zur Datei hinzugefügt. Dies geschieht durch das Objekt des von uns erstellten Fstreams.

# Fout<

Nachdem wir die Daten in der Datei geschrieben haben, werden wir sie mit demselben Objekt schließen. Bis jetzt haben wir das Objekt von „Ofstream“ verwendet, um in die Datei zu schreiben. Um die Daten aus der Datei zu lesen, müssen wir ein Objekt von 'Ifstream' erstellen, und das ist in Ordnung.

# IfStream Fin;

Nach dem Erstellen des Objekts öffnen wir nun die Datei, indem wir den Namen der Datei angeben.

Flosse.Datei öffnen.txt")

Wir haben eine Weile Schleife verwendet, um die Daten zu schreiben. In ähnlicher Weise benötigen wir eine Weile Schleife, um die Daten bis zum Ende des Terminals aus der Datei zu lesen. Diesmal wird der Datensatz aus der Datei in das Konsolenterminal abgerufen. Schließen Sie die Datei dann über das Objekt.

# Fin.schließen();

Gehen Sie nach dem Schließen der Datei zum Terminal und verwenden Sie den G ++ - Compiler, um den Code zu kompilieren.

$ g ++ -o zufällig zufällig.C
$./ willkürlich

Willkürlich. C ist der Name der Datei, in der wir den C ++ - Code geschrieben haben. Wenn wir die Datei ausführen, können Sie feststellen, dass neue Daten vom Benutzer eingegeben werden. Wenn die zugegebenen Daten abgeschlossen sind, muss der Benutzer 'Q' zum Abschluss verwenden. Drücken Sie q, wie es im folgenden Bild angezeigt wird.

Wenn der Benutzer nun Q drückt, werden die Daten gestoppt, die Datei einzugeben, und das Steuer. Jetzt ist die Datei geschlossen. Auf 'Q' wird die Datei geöffnet, um die eingegebenen Daten anzuzeigen, damit Daten erneut angezeigt werden, nachdem das Schlüsselwort 'q' angezeigt wird.

Jetzt gehen wir zum Dateimanager und sehen die Datei an. Die Daten werden eingegeben und der vorherige wird entfernt.

Wenn wir jedoch keine Datei haben und einen zufälligen Namen verwenden, wird eine neue Datei mit diesem Namen erstellt.

Zum Beispiel wird hier der Dateiname verwendet 'Beispiel.txt'. Anstelle von 'Datei.txt'. Sie können sehen, dass es automatisch im Ordner erstellt wird. Beim Öffnen wird der gleiche Text angezeigt, den Sie eingegeben haben.

Zufälliger Zugriff auf Datei über seeeng () und suchp ()

In beiden Funktionen steht in Seekg 'G' für 'Get' und in SeekP 'P' für 'Put' steht für 'Put'. Es enthält zwei Parameter. Man wird verwendet, um die Anzahl der Bytes zu bestimmen, die den Dateizeiger in der Datei verschieben sollten.

Abschluss

Dieser Artikel wird über den zufälligen Zugriff der Datei in C geschrieben++. Das von uns verwendete Betriebssystem ist das Linux -Betriebssystem. Alle hier verwendeten Beispiele werden leicht erklärt, um die Mehrdeutigkeit aus dem Kopf des Benutzers in Bezug auf Eingabe- und Ausgabestreams zu entfernen. Wir hoffen, dass dieser Kampf in zukünftigen Perspektiven hilfreich sein wird.