file einlesen
-
hallo,
ich würde gerne ein file einlesen allerdings kann ich nur eine bestimmte konstante anzahl an chars einlesen und nicht dass ganze file.
programmiert hab ich es nach diesem vorbild:
http://home.fhtw-berlin.de/~junghans/cref/FUNCTIONS/fgetc.html
wollte auch nachfragen ob wer einen befehl kennt um ein zeichen an einer stelle zu lesen/schreiben!
mfg clemens
-
Hallo
Zunächst einmal bist du hier im C++ Forum, also nimm auch std::fstream (Siehe FAQ, den Thread "Dateien und Ströme").
Auch wenn du nur einen Teil einer Datei haben willst must du erstmal bis zu dieser Stelle lesen. Es gibt keine allgemeine Funktion "Öffne Datei und lies von x bis y".bis bald
akari
-
wenn du an einer stelle xy schreiben willst, ohne vorher alles durchzulesen, solltest du dir die seek()-funktion anschauen.
-
ehm std::ifstream::read | std::ifstream::seekg ...
-
clemensaaa schrieb:
ich würde gerne ein file einlesen allerdings kann ich nur eine bestimmte konstante anzahl an chars einlesen und nicht dass ganze file.
Hallo Clemens,
wie ist das Format Deiner Datei, kannst Du ein Beispiel geben. Und was davon willst Du lesen und in welche Typ von Variablen (int, string, double) soll das letztendlich landen?
Einlesen einer Anzahl von Zeichen geht so:
#include <iostream> #include <fstream> #include <string> int main() { using namespace std; ifstream quelle( "input.txt" ); string str; in >> noskipws; // auch Leerzeichen einlesen char c; for( int n = 0; n < 8 && in >> c; ++n ) // 8 Zeichen lesen str += c; cout << "gelesen: [" << str << "]" << endl; return 0; }Gruß
Werner