Click here to Skip to main content
15,881,380 members
Articles / Programming Languages / C#
Article

Append Date and Time to File

Rate me:
Please Sign up or sign in to vote.
4.16/5 (15 votes)
6 Oct 2008CPOL1 min read 81.2K   771   28   10
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.

C#
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.

C#
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, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United Kingdom United Kingdom
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralGood code example. Pin
Donsw26-Jan-09 11:33
Donsw26-Jan-09 11:33 
GeneralVery useful Compatibility with other Operations Systems Pin
heia15-Oct-08 20:04
heia15-Oct-08 20:04 
GeneralVery Useful Application Pin
Jason Barry14-Oct-08 2:10
professionalJason Barry14-Oct-08 2:10 
GeneralRe: Very Useful Application Pin
TimGradwell14-Oct-08 3:01
TimGradwell14-Oct-08 3:01 
Generalthis check and protection was useful for my use case Pin
xoox7-Oct-08 2:41
xoox7-Oct-08 2:41 
GeneralNice idea Pin
Dinesh Mani7-Oct-08 2:01
Dinesh Mani7-Oct-08 2:01 
GeneralRe: Nice idea Pin
TimGradwell8-Oct-08 2:21
TimGradwell8-Oct-08 2:21 
GeneralUse HH to get 24-hour time Pin
PIEBALDconsult6-Oct-08 12:42
mvePIEBALDconsult6-Oct-08 12:42 
Use HH to get 24-hour time.

When I do that sort of thing I don't put in separators: Gopher_20080917131320.log

My methods also allow the caller to specify the format.
GeneralRe: Use HH to get 24-hour time Pin
TimGradwell6-Oct-08 22:35
TimGradwell6-Oct-08 22:35 
GeneralRe: Use HH to get 24-hour time Pin
edobrzel8-Oct-08 6:32
edobrzel8-Oct-08 6:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.