19. marts 2008 - 20:07Der er
17 kommentarer og 1 løsning
Tid og dato
Hello, World!
Jeg skal bruge to funktioner: - En der kan finde antal milisekunder fra Epoch til nu. - En der kan omsætte en int til et brugerdefineret tidsformat som String (eller måske omsætte int til et specielt tidsformat og så til String).
namespace E { public class Program { public static void Main(string[] args) { long k = (new DateTime(1970, 1, 1, 0, 0, 0) + TimeZone.CurrentTimeZone.GetUtcOffset(DateTime.Now)).Ticks; long msepoch = (DateTime.Now.Ticks - k) / 10000; Console.WriteLine(msepoch); DateTime dt = new DateTime(msepoch * 10000 + k); Console.WriteLine(dt.ToString("dd/MM/yyyy HH:mm")); Console.ReadKey(); } } }
Synes godt om
Slettet bruger
19. marts 2008 - 21:15#6
Mange tak :) Du bliver da også mere og mere grundig ;P
Synes godt om
Slettet bruger
19. marts 2008 - 21:18#7
Hmm... Nu har du sgu forvirret mig! Hvad skal jeg skrive for at få 'DD-MM-YYYY HH:MM:SS' (jeg ved godt, det ikke er korrekt skrevet) ud af integeren TestVar?
Kan jeg så skrive: (new DataTime(msepoch * 10000 + k)).ToString("dd/MM/yyyy HH:mm"); for at få den nuværende tid udskrevet? Og jeg forstår stadig ikke, hvor k kommer fra?
Forresten skal jeg jo også bruge et integer, der giver nuværende tidspunkt. Hvordan finder jeg det?
Du sagde at du ville have epoch tid som også PHP bruger. Den tager udgangspunkt i 1970.
Hvis du vil bruge .NET's udgangspunkt, så kan du glemme k og 1970 og bare bruge ticks.
Synes godt om
Slettet bruger
20. marts 2008 - 10:32#15
Ja, jeg ved, jeg lød noget tvetydig... Men starttidspunktet er altså ligegyldigt.
Så jeg skal bruge MinInt = DataTime.Now.Ticks; for at finde ticks fra .NET's starttidspunkt? Og så Console.WriteLine((new DataTime(MinInt)).ToString("dd-MM-yyyy HH:mm")); for at få 20-03-2008 10:32 lige nu?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.