000
09.12.2006, 14:13 Uhr
~snowgarden
Gast
|
Hallo zusammen,
ich möchte gerne eine Binäredatei auslesen. Dies hat mal geklappt im untenstehenden Beispiel. In den Header der Binardatei sind die Metadaten gespeichert, unter anderem die Anzahl nachfolgender Farbenfelder (haben alle die gleiche Struktur). Nun möchte ich mit der count Variable ein Array von der Struktur COLOUR mit dem Index count. Leider funktioniert dieses nicht.
Worin habe ich eine falsche Überlegung gemacht? Kann es sein, dass das Array nur konstante Werte entpfangen kann. Gibt es da eine Möglichkeit, dies zu umgehen? Besten Dank
Snow
C++: |
#include <iostream> #include <fstream>
using namespace std;
struct META_COLOUR { unsigned short int version; unsigned short int count; };
struct COLOUR { unsigned short int spacer; unsigned short int red; unsigned short int green; unsigned short int blue; unsigned short int spacer2; };
int main() { fstream File("wonderland.aco", ios::in|ios::binary); if (File.is_open()) { META_COLOUR gr_meta; File.read((char*)&gr_meta, sizeof(gr_meta)); int foo = gr_meta.count; COLOUR gr_colour[foo]; } else { cout << "geht nicht"; } }
|
|