Lesen und Schreiben in eine Textdatei in C++
In diesem Tutorial lernen wir, wie man eine Textdatei in C++ liest und schreibt. Überprüfen Sie in beiden Fällen immer, ob die Datei existiert, nachdem Sie einen Lese-/Schreibdatenstrom deklariert haben:
ifstream myFlux("C:/test.txt");
if(myFlow){
...
}
else{
Nachricht, die darauf hinweist, dass die Datei nicht existiert
}
#include < iostream>
ifstream myFlux("C:/test.txt");
if(myFlow){
...
}
else{
Nachricht, die darauf hinweist, dass die Datei nicht existiert
}
Schreiben Sie in eine Datei in C++
Das Schreiben erfolgt durch Erstellen eines Streams ofstream, der den Dateinamen als Parameter verwendet. Dieser Fluss wird eine Rolle spielen. Der Vermittler zwischen den Compiler und Datei. Die AnweisungFlowName< < " "Write Something" < < endl; schreibt den Satz "write something" in der Datei test.txt. endl macht einen Zeilenumbruch.
#include < iostream>
#include < fstream>
#include < Zeichenfolge>
#include < sstream>
Verwenden des Namensraums std;
void write(int T[])
{
string const filename("C:/test.txt");
ofstream myStream(nomFichier.c_str());
if(myFlow)
{
Saiten-Saite;
for(int i = 0 ; i < 10 ; i++)
string += convertInt(T[i])+" ";
myFeed-< < Kette < < endl;
}
else
Kosten < < "Datei kann nicht geöffnet werden." < < endl;
}
//Konvertieren einer Ganzzahl in string
Saite convertInt(int number)
{
stringstream ss; ss < < Zahl; Rückkehr ss.str();
}
//Generieren Sie eine aletoriale Nummer
//Generieren Sie eine aletoriale Nummer
int rand(int nb)
{
return rand()%nb;
}
int main()
{
int T1[10]={1,2,3,4,5,6,7,8,9,10};
Schreiben (T1);
play();
srand(time(NULL));
for(int i=0; i< 5; i++)
printf("%d \n",rand(50));
system("pause");
}
Lesen einer Datei in C++
In C++ können Sie auf drei Arten lesen:
- Zeile für Zeile: Der Wiedergabecursor liest die gesamte Zeile und geht mit der Methode getline( ifstream stream, string line) zur nächsten über.
- Wort für Wort: mit der myFlow-Anweisung > > Wort; Wort ist ein String. Wörter werden durch Leerzeichen getrennt.
- Zeichen für Zeichen: mit der Methode get(char c).
Beispiel:
nichtig reading()
{
ifstream myFlux("C:/test.txt");
if(myFlow)
{
Leitlinie;
printf("Zeile für Zeile\n");
while(getline(myFlow,line))
Kosten< < Linie< < endl;
printf("Wort für Wort\n");
myFlow.clear();
initialisieren Sie den Schieberegler von zero
initialisieren Sie den Schieberegler von zero
myFlux.seekg(0, ios::beg);
Saitenwort;
while(myFlow> > word)
Kosten< < mot< < endl;
printf("Zeichen für Zeichen\n");
myFlow.clear();
myFlux.seekg(0, ios::beg);
Panzer c;
while(myFlux.get(c))
{
Kosten< < c< < endl;
int position=myFlow.tellg();
}
}
else
Kosten< < "Datei kann nicht geöffnet werden" < < endl;
}