C++-Bibliothek für Dateieingabe/-ausgabe - <fstream>
In C++, <fstream>ist eine Klasse in der Standardbibliothek für Datei-Ein-/Ausgabeoperationen. Sie bietet eine praktische Möglichkeit, Dateien zu lesen und zu schreiben.
fstreamJaiostreamTeil der Bibliothek, der das Lesen und Schreiben von Text- und Binärdateien unterstützt.
fstreamDie Klasse istiostreamEine Klasse in der Bibliothek, die erbt vonistreamundostreamKlasse, was bedeutet, dass sie sowohl für Eingabe als auch für Ausgabe verwendet werden kann.
Syntax
fstreamDie grundlegende Syntax lautet wie folgt:
int main() {
std::fstream file; // fstream-Objekt erstellen
file.open("filename", mode); // Datei öffnen
// Dateioperationen ausführen
file.close(); // Datei schließen
return 0;
}
wobeifilenameist der Name der Datei,modeist der Modus zum Öffnen von Dateien, gängige Modi umfassen:
std::ios::in: Öffnet die Datei im Eingabemodus.std::ios::out: Öffnet die Datei im Ausgabemodus.std::ios::app: Öffnet die Datei im Anhängemodus.std::ios::ate: Öffnet die Datei und positioniert sich am Ende der Datei.std::ios::trunc: öffnet die Datei und kürzt sie, d. h. leert den Dateiinhalt.
Beispiel
In eine Textdatei schreiben:
Beispiel
#include <iostream>
int main() {
std::fstream file;
file.open("example.txt", std::ios::out); // Datei im Ausgabemodus öffnen
if (!file) {
std::cerr << "Datei kann nicht geöffnet werden!" << std::endl;
return 1; // Datei konnte nicht geöffnet werden
}
file << "Hallo, Welt!" << std::endl; // Text schreiben
file.close(); // Datei schließen
return 0;
}
Erstelle eine Datei mit Namen im aktuellen Verzeichnisexample.txtfile, der Dateiinhalt ist:
Hello, World!
Eine Textdatei lesen
Beispiel
#include <iostream>
#include <string>
int main() {
std::fstream file;
file.open("example.txt", std::ios::in); // Datei im Eingabemodus öffnen
if (!file) {
std::cerr << "Datei kann nicht geöffnet werden!" << std::endl;
return 1; // Datei konnte nicht geöffnet werden
}
std::string line;
while (getline(file, line)) { // Zeile für Zeile lesen
std::cout << line << std::endl;
}
file.close(); // Datei schließen
return 0;
}
ifexample.txtDie Datei enthält den folgenden Inhalt:
Hello, World! This is a test file.
dann wird das Programm Folgendes ausgeben:
Hello, World! This is a test file.
An eine Datei anhängen:
Beispiel
#include <iostream>
int main() {
std::fstream file;
file.open("example.txt", std::ios::app); // Datei im Anhängemodus öffnen
if (!file) {
std::cerr << "Datei kann nicht geöffnet werden!" << std::endl;
return 1; // Datei konnte nicht geöffnet werden
}
file << "Diese Zeile an die Datei anhängen." << std::endl; // Text anhängen
file.close(); // Datei schließen
return 0;
}
example.txtDie Datei enthielt ursprünglich den folgenden Inhalt:
Hello, World! This is a test file.
Nach Ausführung des obigen Programms wird der Dateiinhalt zu Folgendem:
Hello, World! This is a test file. Appending this line to the file.Weitere Erweiterungen