Fragen zum strukturierten einlesen eines Binary Files



  • Hi Leute

    Hab da grade nen kleines Problem

    will 4 Strings auslesen
    vorher les ich nen paar integer und nen Float aus. das haut schon super hin.

    jetzt soll ich 4 Strings auslesen
    Alle unterschiedlich lang usw.

    Ich weis nur die Länge des Content-Teiles (also aller Strings) in Bytes.

    hat einer ne Idee wie ich das angehen könnte ?

    for (counter = 0; counter < *counter_set; counter++)
        {
          printf("COUNTER %i\n",counter);
          fread(&id, sizeof(int), 1, file_pointer);
          printf("ID ");
          printf("%d\n", id);
          fread(&rating, sizeof(double), 1, file_pointer);
          printf("Rating ");
          printf("%f\n", rating);
          fread(&content_length, sizeof(int), 1, file_pointer);
          printf("CONTENT ");
          printf("%d\n", content_length);
          build(user_data, &counter, id, rating, content_length);
        }
    
     for (counter = 0; counter < *counter_set; counter++)
        {
    // hier drinnen muss ich die 4 Strings einlesen
        }
    

    so siehts bis jetzt aus. die for dient nur wenn da mehr als ein "teil" drinnensteht. lauft im moment nur 1 mal durch.
    hat einer ne idee wie ich das angehen könnte ?
    so far



  • Ich verstehe nicht genau was das Problem ist.
    Mit fread kanndt du auch strings einlesen, da du ja die Länge kennst...

    fread(Buffer, sizeof(char), iBufferLen, file_pointer);
    

    Gruss Binggi


Anmelden zum Antworten