Ifstream bricht ab
-
Hi,
ich will mit meinem Pogramm eine Datei einlesen die aus Hash-Daten besteht. Nur scheiter ich halt schon beim einlesen mit ifstream. Ich hab volgenden Code mal mit einer normalen Volltext-Datei, meiner Hash-Datei und einer JPEG-Datei getestet. Nur bei der Volltext-Datei hats funktioniert.#include <iostream> #include <stdlib.h> #include <fstream> using namespace std; int main(int argc, char *argv[]) { ifstream File("C:\\Test.jpg"); while(!File.eof()) { char Buffer; Buffer = File.get(); cout << Buffer; } system("PAUSE"); return 0; }
-
vielleicht geht das mit .jpg nicht so einfach?
-
Vielleicht brauchst du das ios::binary flag?
-
Ixtana schrieb:
vielleicht geht das mit .jpg nicht so einfach?
Ich wills ja net darstellen sondern nur einlesen...
Und das mit dem ios::binary hab ich schon brobiert, ging auch net.
-
Für mich stellt sich die Frage, was du dir als Ausgabe erhoffst und was du als Ausgabe bekommst. Ich bekomme wunderschöne Zeichen wenn ich zusätzlich das ios::binary verwende, wie schon von YASC erwähnt.
Enthält dein Bild auch farbige Pixel, oder ist es komplett weiß?
-
while(!File.eof())
{
char Buffer;
Buffer = File.get();
cout << Buffer;
}Nur so nebenbei. Lies mal:
http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&faq=eof#Answ
-
BasicMan01 schrieb:
Für mich stellt sich die Frage, was du dir als Ausgabe erhoffst und was du als Ausgabe bekommst. Ich bekomme wunderschöne Zeichen wenn ich zusätzlich das ios::binary verwende, wie schon von YASC erwähnt.
Enthält dein Bild auch farbige Pixel, oder ist es komplett weiß?Naja mir gehts eher um allgemein das einlesen von Daten. Der Inhalt interessiert mich erst mal nicht. Genau so gut könnte man auch eine exe-Datei ind "Test.jpg" umbenennen, da bricht der stream ja auch ab. Und ich bekomm auch Zeichen nur ist das immer nur ein Bruchteil des Ganzen.