Circular File

When I wrote my first article on CodeGuru,

Expandable, Data Type-Neutral Buffer Class
I realized that there are lot of people seeking the code
for a circular file.
Hence, I developed my own circular file implementation, and want
to share this. Its interface is very simple. Everything basically
revolves around the Addline(CString) method which you use to
add a line at a time to the current file.


  • //Create New File with Name "default Log" with 100 Lines

  • //Create File with Name strFile Name But 100 lines
    CCirFile(char * strFileName);

  • //You can specify file Name and File Size
    CCirFile(char * ,int );


  • //All file initialization here
    int InitFile();

  • //You should call this function to add new line at start of file
    int AddLine( CString );


  • It’s not a true circular file implementation.
    It adds each new line to the beginning of the file,
    and moves the remaining lines, truncating the last line

  • It’s slow and performance could be dramatically increased via
    the use of multiple threads.


Download demo project – 28 Kb

More by Author

Must Read