public void Purge()
{
// purge the file so that only the last 1000 records are kept and the rest is deleted
// create a copy
try
{
string newFilename = Path.Combine(Path.GetDirectoryName(m_fileName), Path.GetFileNameWithoutExtension(m_fileName) + "-" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".btl");
File.Copy(m_fileName, newFilename);
}
catch (Exception E)
{
Console.WriteLine(E.Message);
}
File.Delete(m_fileName);
while (_transCollection.Count > 1000) _transCollection.RemoveAt(0);
CreateFileByFilename();
int entryCount = 0;
foreach (TransactionEntry entry in _transCollection)
{
entry.TransactionNumber = entryCount++;
AddTransactionToFile(entry, false);
}
UpdateNumberOfTransActions();
UpdateChecksum();
ReadTransactionFile();
}