struct oldstruct { ...stuff... }; struct newstruct { ...stuff + new stuff... }; open file for reading open another for writing while not at the end of the input file read into an instance of old structure assign old data members across to the new structure instance fill the other "new stuff" portion of said instance write new structure to output ...