.txt files?

fireflyhope

Mitglied
Hallo, ich bin ziemlich neu in c++ habe davor aber schon visualbasic.NET programmiert, dort hatte man einfache funktionen um ein txt file zuöffnen zuändern/auszulesen etc.

wie sieht es da in c/c++ könnte mir vielleicht jemand einen code reinstellen das ein txt file ausließt oder verändert? wäre echt super, danke im voraus

Mfg firefly
 
C oder C++ ?
Konsole oder GUI mit TextFeld?
Visual / Borland / sonstige CompilerSuiten?

Du solltest schon ein wenig mehr Informationen preisgeben.

Befehle fürs Öffnen findest Du unter diesen Stichworten in der Hilfe
- fopen (C)
- ifstream / ofstream (STL C++)
 
ja einfach ein billiges konsolen dingens, also wo einfach in die konsole schreibt was in der test.txt" steht :), ja am besten wäre schon c++
 
Also zum bearbeiten von Dateien brauch du erstmal die Bibliotheken
Code:
#include <iostream>
#include <fstream>
Die Klasse
Code:
ofstream
nutzt du fuer Dateiausgaben,
Code:
ifstream
fuer Eingabe und
Code:
fstream
fuer ein und Ausgabe.
Du kannst oefnen und die Schaffung der Dateiinstanz gleichzeitig oder getrennt machen.
Gleichzeitig:
Code:
ofstream outfile("foo.txt");
Getrennt:
Code:
ofstream outfile;
outfile.open(foo.txt);
Du kannst der open Methode noch Argumente uebergeben. Per Default, geht c++ von einer Ascii Datei (also Text Datei aus)
Code:
ios_base::app
Neue Daten werden am Ende angehaengt.
Code:
ios_base::ate
Dateizeiger ans Ender der Datei.
Code:
ios_base::binary
Datei im Binaermodus oeffnen.
Code:
ios_base::nocreate
Existiert die Datei nicht wird sich auch nicht erzeugt.
Die Argumente koennen mit "oder" kombiniert werden. Also kannst du zum Beispiel schreiben:
Code:
ofstream outfile("foo.txt", ios_base::app | ios_base::nocreate)
Bedeutet: Daten ans Ende anhaengen und die Datei bei nichtbestehen nicht erzeugen.
Wenn du einen aelteren Kompiler verwendest, musst du eventuell ios statt ios_base schreiben.

Ausgaben in die Datei kannst du wie bei ueblich machen:
Code:
ofstream outfile("foo.txt");
outfile << "Hello World!" << endl;
Eingabe ...
Code:
int x;
ifstream infile("bar.txt"); 
infile >> x;
Schliessen einer Datei:
Code:
outfile.close();
Lesen eines einzelnen char
Code:
char c; 
ifstream infile(bar.txt); 
infile.get(c);
... einer ganzen Zeile
Code:
string line; 
ifstream infile(bar.txt); 
getline(infile,line);
Mit
Code:
put(char)
kannst du ein einzelnes Zeichen schreiben.
es gibt noch verschiedene Methoden zB um den Dateizeiger zu postitionieren, aber dass erlasse ich dir zum Training deiner Recherchefaehigkeiten :)
 
Zurück