Unix Timestamp
Übersicht

#ReaperNewsposterBetreff: Unix Timestamp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,
ich versuche micht gerade mit dem Unix Timestamp in BMax. Habe es mittlerweile geschaft den Integerwert mit time_() herauszubekommen. Mit localtime_() oder strftime_() kann ich ihn auch soweit in ein lesbares Format konvertieren. Nun habe ich aber noch ein paar Fragen bzw. Probleme. Hier erstmal mein Code, den ich zusammengesucht habe: Code: [AUSKLAPPEN] Local time:Int[2]
time_(time) Local pointer :Int Ptr = Int Ptr(localtime_(time)) Print "Sec: "+pointer[0] Print "Min: "+pointer[1] Print "Hour: "+pointer[2] Print "Day: "+pointer[3] Print "Month:"+pointer[4] Print "Year: "+(pointer[5]+1900) Print "Timestamp: " + time[0] Die Ausgaben von Sec, Min, etc. sind alle korrekt. time[0] gibt mir für jetzt z.B.: 1225648930 Wenn ich allerdings (z.B. durch eine Webseite) diesen Integerwert in einer lesbaren Uhrzeit anzeigen lasse, bekomme ich auch 19 Uhr raus. Aber müsste es nicht 18 Uhr sein, also UTC+0? Bei diesem ganzen Zeitzonen und Sommerzeitzeugs blicke ich noch nicht so ganz durch. :-/ Oder wird von (z.B.) der Webseite automatisch die Zeitzone hinzugerechnet? Und noch eins: Aus dem BRL.System Code: Code: [AUSKLAPPEN] Function CurrentDate$()
Local time[256],buff:Byte[256] time_(time) strftime_(buff,256,"%d %b %Y",localtime_( time )) Return String.FromCString(buff) End Function Wie groß muss nun wirklich das time-Array sein? Mit der Größe 1 scheint es auch zu funktionieren. Naja, mal wieder genug gefragt. ![]() Danke fürs lesen. ![]() MfG #Reaper |
||
- Zuletzt bearbeitet von #Reaper am Mo, Nov 10, 2008 20:26, insgesamt 2-mal bearbeitet
![]() |
IronstormErstklassiger Contest-VeranstalterBetreff: Re: Unix Timestamp |
![]() Antworten mit Zitat ![]() |
---|---|---|
#Reaper hat Folgendes geschrieben: Die Ausgaben von Sec, Min, etc. sind alle korrekt. time[0] gibt mir für jetzt z.B.: 1225648930
Wenn ich allerdings (z.B. durch eine Webseite) diesen Integerwert in einer lesbaren Uhrzeit anzeigen lasse, bekomme ich auch 19 Uhr raus. Aber müsste es nicht 18 Uhr sein, also UTC+0? Bei diesem ganzen Zeitzonen und Sommerzeitzeugs blicke ich noch nicht so ganz durch. :-/ Oder wird von (z.B.) der Webseite automatisch die Zeitzone hinzugerechnet? Bei deinem Computer ist derzeit UTC+1 eingestellt, also Winterzeit in unserer Zone. Unix stellt soweit ich weiß die Zeitzone mit ein. Die Zonen kannst du dir in Wikipedia natürlich anschauen. MfG Ironstorm |
||
..:: blackbird design : blackbird photography : Futuro Verde : X-Commander ::..
MacBook | Intel Core 2 Duo 2,1 GHz | 2048 MB RAM | 80 GB HDD | Mac OS X 10.6.2 (Snow Leopard) | Adobe CS4 Design Premium |
#ReaperNewsposter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Naja, ok, danke. Das schein ich nun verstanden zu haben. ![]() Habe nun ein ganz anderes Problem. Und zwar erstmal Code: Code: [AUSKLAPPEN] SuperStrict
Local t:Int=123457689 Local t2:Int=time_(Null) Local k:Int Ptr=Int Ptr(localtime_(Varptr t)) Local k2:Int Ptr=Int Ptr(localtime_(Varptr t2)) Print "S: "+k[0] Print "M: "+k[1] Print "H: "+k[2] Print "" Print "S: "+k2[0] Print "M: "+k2[1] Print "H: "+k2[2] Also, ich habe hier 2mal verschiedene Timestamps t und t2. Und somit müsste ja auch k[] und k2[] unterschiedliche Werte enthalten. Aber irgendwas mache ich wohl falsch, da nach dem Aufruf von der Zeile "Local k2:Int Ptr=Int Ptr(localtime_(Varptr t2))" sich auch k1 verändert. Ich versteh nur nicht warum. ![]() MfG #Reaper Edit: So geht es nun endlich richtig: Code: [AUSKLAPPEN] Type tm
Field tm_sec:Int Field tm_min:Int Field tm_hour:Int Field tm_mday:Int Field tm_mon:Int Field tm_year:Int Field tm_wday:Int Field tm_yday:Int Field tm_isdst:Int End Type Local t:Int = 1234567890 Local t2:Int = time_(Null) Local k:tm = New tm MemCopy( k, localtime_(Varptr t), SizeOf(k) ) Local k2:tm = New tm MemCopy( k2, localtime_(Varptr t2), SizeOf(k2) ) Print "S: "+k.tm_hour Print "M: "+k.tm_min Print "H: "+k.tm_sec Print "" Print "S: "+k2.tm_hour Print "M: "+k2.tm_min Print "H: "+k2.tm_sec Naja, falls dennoch wer weiß, was am oberem Code flasch ist... Danke. ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group