struct & iostream in binary

Hi.

Du öffnest einen Datei-Inputstream im Binärmodus und liest die Werte mit der Methode read() ein solange wie das möglich ist.
C++:
struct S {
  unsigned int matnr;
  int p;
  float note;
} s;

ifstream in("xyz.bin", ios::in | ios::binary);

if (in.read(static_cast<char*>(&s.matnr), sizeof(s.matnr)) &&
  in.read(static_cast<char*>(&s.p), sizeof(s.p)) &&
  in.read(static_cast<char*>(&s.note), sizeof(s.note))) {
  // Datensatz erfolgreich eingelesen.
}

Gruß
 
okay damit konnte ich schon was anfangen und hab nun mal nen bissel code zusammen gebastelt

typedef struct zeile
{
unsigned int nr;
int p;
float n;
} ZEILE;

typedef struct tabelle
{
int n;
ZEILE * tab;
} TABELLE;

int main(int argc, char* argv[]) {
TABELLE t;
ifstream in("daten.dat", ios::binary);
in.read( reinterpret_cast<char*> (&t), sizeof(TABELLE) );
in.close();
t.tab = new ZEILE[t.n];

nun will ich natürlich die werte einfügen und weiss einfach nicht weiter
 
Zurück