int playback_line( int buflen, char *buffer, int *read_size ) { char *cp; if ( recording == ON || replaying == OFF ) { return ( -1 ); } if ( fgets( buffer, buflen, rfp ) == NULL ) { close_record( ); return ( -1 ); } else { cp = strrchr( buffer, '\n' ); if ( cp != NULL ) { *cp = '\0'; } *read_size = strlen( buffer ); output_line( buffer ); } return ( '\n' ); } /* playback_line */
int main(int argc, char *argv[]) { int fd; person_record rec; /* fd = open_record("data1"); */ if(argc > 1) { // insert data if(argc > 5 && !strcmp(argv[1], "insert")) { fd = update_record("data1", 1); rec.key = atoi(argv[2]); strcpy(rec.fname, argv[3]); strcpy(rec.lname, argv[4]); rec.age = atoi(argv[5]); insert_record(fd, &rec); } /* delete data */ if(argc > 2 && !strcmp(argv[1], "delete")) { fd = update_record("data1", 0); delete_record(fd, atoi(argv[2])); } /* print data */ if(argc > 2 && !strcmp(argv[1], "print")) { fd = update_record("data1", 1); get_record(fd, &rec, atoi(argv[2])); printf("key = %d\n", rec.key); printf("First = %s\n", rec.fname); printf("Last = %s\n", rec.lname); printf("Age = %d\n", rec.age); } } close_record(fd); return 0; }
int playback_key( void ) { int c; if ( recording == ON || replaying == OFF ) { return ( -1 ); } if ( fscanf( rfp, "<%o>\n", &c ) == EOF ) { close_record( ); c = -1; } return ( c ); } /* playback_key */