Example: rewind

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

the time, as returned by the time function.

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

#include <time.h>
#include <stdio.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
    rewind(file);
    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