Solved

ASP.net Adding a timestame to File name

Posted on 2009-07-01
4
488 Views
Last Modified: 2012-05-07
Hello,
I would like to add time stamp to file name in following format.

imagename200907011905.jpg
imagename200907011905.tiff


My problem is that the extension is always different.
How do I separate extension and append time stamp?
I would like to store it in database, so I would like to know the variable name, store procedure as well.

I'm using ASP.NET VB and SQL server 2008 express edition.

Thank you


Dim myfilename As String

        Dim currentTime As String = "0000".Substring(0, 4 - DateTime.Now.Year.ToString().Length) & DateTime.Now.Year.ToString() & "00".Substring(0, 2 - DateTime.Now.Month.ToString().Length) & DateTime.Now.Month.ToString() & "00".Substring(0, 2 - DateTime.Now.Day.ToString().Length) & DateTime.Now.Day.ToString() & "00".Substring(0, 2 - DateTime.Now.Hour.ToString().Length) & DateTime.Now.Hour.ToString() & "00".Substring(0, 2 - DateTime.Now.Minute.ToString().Length) & DateTime.Now.Minute.ToString() & "00".Substring(0, 2 - DateTime.Now.Second.ToString().Length) & DateTime.Now.Second.ToString()

        myfilename = FileField.PostedFile.FileName & currentTime

        Dim c As String = System.IO.Path.GetFileName(myfilename)

        Try

            FileField.PostedFile.SaveAs(Server.MapPath("~/blog/" + c))

            Span1.InnerHtml = "File upload successful."

        Catch ex As Exception
 

        End Try

Open in new window

0
Comment
Question by:jtuttle99
  • 2
4 Comments
 
LVL 3

Accepted Solution

by:
jbeasle3 earned 250 total points
ID: 24759972
There may be a better way, but I would do it like this (see code snippit)
		Dim myfilename As String

		Dim currentTime As String = Format(Now, "yyyyMMddHHmm")

		Dim myFileParts() As String
 

		myFileParts = Split(FileField.PostedFile.FileName, ".")

		If myFileParts.Length > 1 Then

			myfilename = myFileParts(0) & currentTime & "." & myFileParts(1)

		Else

			myfilename = FileField.PostedFile.FileName & currentTime

		End If

		Dim c As String = System.IO.Path.GetFileName(myfilename)

		Try

			FileField.PostedFile.SaveAs(Server.MapPath("~/blog/" + c))

			Span1.InnerHtml = "File upload successful."

		Catch ex As Exception
 

		End Try

Open in new window

0
 
LVL 15

Assisted Solution

by:jinal
jinal earned 250 total points
ID: 24760401
Use System.IO.Path functionality to get detail.

Dim myfilename As String
Dim strExtension As String
Dim strTimeStamp As String
strTimeStamp = DateTime.Now.ToString("yyyyMMddhhmm")
myfilename = System.IO.Path.GetFileNameWithoutExtension(FileField.FileName)
strExtension = System.IO.Path.GetExtension(FileField.FileName)
Dim fullname As String = myfilename + strTimeStamp + strExtension
Try
FileField.PostedFile.SaveAs(Server.MapPath("~/blog/" + fullname))
Span1.InnerHtml = "File upload successful."
Catch ex As Exception
End Try
 
0
 
LVL 3

Expert Comment

by:jbeasle3
ID: 24760711
yep. either way works, except I like the 24-hour date format (HH) as opposed to the 12 (hh).
0
 

Author Closing Comment

by:jtuttle99
ID: 31599040
Thank you, it worked!
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Lots of people ask this question on how to extend the “MembershipProvider” to make use of custom authentication like using existing database or make use of some other way of authentication. Many blogs show you how to extend the membership provider c…
I recently went through the process of creating a Calendar Control of events with the basis of using a database to keep track of the dates that are selectable, one requirement was to have the selected date pop-up in a simple lightbox.  At first this…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, just open a new email message. In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
Both in life and business – not all partnerships are created equal. As the demand for cloud services increases, so do the number of self-proclaimed cloud partners. Asking the right questions up front in the partnership, will enable both parties …

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now