Click here to Skip to main content
15,886,199 members
Articles / Programming Languages / C#

Secure File Shredder

Rate me:
Please Sign up or sign in to vote.
4.91/5 (24 votes)
28 Oct 2008CPOL2 min read 109.9K   2.6K   65  
A secure file shredder in C#
using System;
using System.IO;

namespace NSPowertools.NShred
{
    class cLogging
    {
        private string sFilePath = String.Empty;

        public string FilePath
        {
            get
            {
                return sFilePath;
            }
            set
            {
                sFilePath = value;
            }
        }

        public void WriteLog(string logMessage)
        {
            if (FilePath.Length == 0)
                return;
            try
            {
                StreamWriter writeStream = File.AppendText(FilePath);
                writeStream.Write("\r\nLog Entry : ");
                writeStream.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(), DateTime.Now.ToLongDateString());
                writeStream.WriteLine("  :");
                writeStream.WriteLine("  :{0}", logMessage);
                writeStream.WriteLine("-------------------------------");
                writeStream.Flush();
                writeStream.Close();
            }
            catch { }
        }
        public string FetchLog()
        {
            string logLine = String.Empty;
            string logEntry = String.Empty;
            if (FilePath.Length == 0)
                return logLine;
            try
            {
                StreamReader readStream = File.OpenText(FilePath);
                while ((logLine = readStream.ReadLine()) != null)
                {
                    logEntry += logLine;
                }
                readStream.Close();
            }
            catch { }
            return logLine;
        }
    }
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Network Administrator vtdev.com
Canada Canada
Network and programming specialist. Started in C, and have learned about 14 languages since then. Cisco programmer, and lately writing a lot of C# and WPF code, (learning Java too). If I can dream it up, I can probably put it to code. My software company, (VTDev), is on the verge of releasing a couple of very cool things.. keep you posted.

Comments and Discussions