Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Append Date and Time to File

0.00/5 (No votes)
6 Oct 2008 1  
Append date and time to a file for achival purposes
result.JPG

Introduction

When I periodically backup my source files, I need a unique identifier so that I can keep all my backups organised. The attached program does precisely this by appending the date and time to the selected file. The date and time are written in the order of year, month, day, hours, minutes and seconds. This means that when sorting by name, the files are also sorted by their date/time.

The Code

The app takes the file passed as an argument to the program and runs the AppendDate() function on it.

static void AppendDate(String filePath)
{
    FileInfo info = new FileInfo(filePath);

    String folder = Path.GetDirectoryName(filePath);
    String fileName = Path.GetFileNameWithoutExtension(filePath);
    String extension = Path.GetExtension(filePath);

    String newName = folder + "\\" + fileName + "_" + ISO_Date() + extension;
    info.MoveTo(newName);
} 

Append date grabs the date in an ISO-esque format from the ISO_Date function.

static String ISO_Date()
{
    return DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss");
}

Using the Code

It's a console app, but that's not to say you can't run it through Windows Explorer.  Simply copy the EXE into a memorable location (e.g. c:\program files\AppendDate), then "Open" the file you want to append the date to with the AppendDate.exe.

Typically, I will create a zip file using the "Send To" explorer context menu:

SendToCompressed.JPG

Then, append the date to the file using AppendDate.exe:

usage.JPG

History

  • 6th October 2008, 22:15 - Initial submission
  • 6th October 2008, 23:00 - Added code snippets to article
  • 7th October 2008, 09:30 - Fixed typo

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here