Solved

Duration in days, hours, minutes and seconds

Posted on 2006-07-09
5
1,446 Views
Last Modified: 2012-06-21
Hello Experts,

how would I change this;-
result.Days.ToString()

 to give me the result iin days, hours, minutes and seconds.

Also, how would I go about setting this duration to a countdown timer.
0
Comment
Question by:claracruz
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 14

Accepted Solution

by:
Ramuncikas earned 500 total points
ID: 17067502
result.Days & " days " & result.Hours & " hours " & result.Minutes & " minutes " & result.Seconds & " seconds"

Could you please explain more about what you want to achieve with countdown timer.
0
 

Expert Comment

by:SpreadTheWord
ID: 17070891
I think the question needs some more explaination - but maybe look at System.TimeSpan
http://msdn2.microsoft.com/en-us/library/system.timespan.aspx
0
 
LVL 1

Expert Comment

by:NEL_BusOps
ID: 17072247
The first response won't work as it will give you a total of the time difference in each of the specified units. I take it the result needs to be broken down into the maximum amount of days then the remainder used to calculate hours etc.

Below is a ASP function I once made which could be easily converted to .NET, I've not had need to do this in ASP.NET so am not aware if there is a new feature that would accomodate your needs better. Here is a link I have used to adapt a javascript count down timer in the past, should set you on the right track. http://www.hashemian.com/tools/javascript-countdown.htm.

function timeDifference(date1,date2)
'-- Calculates the difference in minutes, hours, days, weeks and years
'-- between two dates.

      if isDate(date1) AND isDate(date2) then
            tUnit = dateDiff("s",date1,date2)
            
'--      Divide seconds into minutes
            tSecond = tUnit / 60
'       --      Discard remainder and assign as minute
            tMinute = fix(tSecond)
'       -- Retreive decimal remainder and convert to seconds
            tSecond = round((tSecond - tMinute)*60)            
            
'--      Divide minutes into hours
            tMinute = tMinute / 60
            tHour = fix(tMinute)
            tMinute = round((tMinute - tHour)*60)
            
'-- Divide hours into days
            tHour = tHour/24
            tDay = fix(tHour)
            tHour = round((tHour-tDay)*24)
'-- Divide days into weeks            
            tDay = tDay/7
            tWeek = fix(tDay)
            tDay = round((tDay-tWeek)*7)
'-- Divide weeks into years
            tWeek = tWeek/52
            tYear = fix(tWeek)
            tWeek = round((tWeek-tYear)*52)
            
            if tYear<>0 then
                  tWrite=tWrite&", "&tYear&" Year"
                  if tYear>1 then tWrite=tWrite&"s"
            end if
            if tWeek<>0 then
                  tWrite=tWrite&", "&tWeek&" Week"
                  if tWeek>1 then tWrite=tWrite&"s"
            end if
            if tDay<>0 then
                  tWrite=tWrite&", "&tDay&" Day"
                  if tDay>1 then tWrite=tWrite&"s"
            end if
            if tHour<>0 then
                  tWrite=tWrite&", "&tHour&" Hour"
                  if tHour>1 then tWrite=tWrite&"s"
            end if
            if tMinute<>0 then
                  tWrite=tWrite&", "&tMinute&" Minute"
                  if tMinute>1 then tWrite=tWrite&"s"
            end if
            if tSecond<>0 AND tHour=0 AND tDay=0 AND tWeek=0 AND tYear=0 then
                  tWrite=tWrite&", "&tSecond&" Second"
                  if tSecond>1 then tWrite=tWrite&"s"
            end if
            
            if tWrite <> "" then
                  timeDifference = right(tWrite,len(tWrite)-2)
            end if
      end if

end function
0
 
LVL 4

Expert Comment

by:Kh3ldar
ID: 17073080
If result is a TimeSpan

.Days, .Hours, .Minutes and .Seconds represent the partials

(note that .TotalDays, .TotalHours, .TotalMinutes and .TotalSeconds represent the whole timespan expressed by these demoninations)

If result is a DateTime

result.ToString("d hh mm ss") will return the values as requested.

Stephen
0
 
LVL 4

Author Comment

by:claracruz
ID: 17074961
how about when binding data to a control like so-  <%# Eval("STARTTIME")%>
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

732 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