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:
Then, append the date to the file using AppendDate.exe:
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