Example: fseek

This example creates a log file and writes the following to it:

To read these values back again, the file cursor is moved to the beginning of the file, using fseek.

    #include <stdio.h>
    #include <time.h>
    #ifdef unix
        char * filename = "/tmp/logfile.txt";
    #else
        char * filename = "c:\\logfile.txt";
    #endif
    FILE* file, thetime;
    int id, id2;
    time_t t;
    char s[32];
// Create a new file 
    if ((file = fopen(filename, "w+" )) == NULL) {
        lr_output_message ("Unable to create %s", filename);
        return -1;
    }
    // Write the Vuser ID and time 
    lr_whoami (&id, NULL, NULL);
    fprintf(file, "Vuser %d %ld", id, time(&t));
// Now read what we've just written. Rewind to start of file
    fseek(file, 0, 0); // 0 is SEEK_SET
    fscanf(file, "%s", &s);
    fscanf(file, "%d", &id2);
    fscanf(file, "%ld", &thetime);
    lr_output_message ("%s %d %ld", s, id2, thetime);
    fclose(file);
Output: 
Vuser -1 1020675497