Hallo,
nachdem ich es geschafft habe, Zusi-TCP auch in Visual Basic erfolgreich zu implementieren, habe ich nun ein Problem mit den Daten Uhrzeit Stunde/Minute/Sekunde. Ich lese die Werte als Single aus (Ist doch richtig oder?). Wie aber ist es möglich, diese Werte wieder in vernünftige Zeitinformationen zu konvertieren?
Grüße,
Thomas
TCP-Server und Uhrzeiten
Moderatoren: Andreas Damm, Jens Haupert
TCP-Server und Uhrzeiten
Grüße,
Thomas (eh. ElektrikTrick)
Thomas (eh. ElektrikTrick)
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
Re: TCP-Server und Uhrzeiten
Hallo Thomas,
Der 01. Januar 1900, 00:00 Uhr entspricht also dem Wert 2,0 (Achtung, nicht 0,0 und auch nicht 1,0!).
Die Nachkommastellen entsprechen dann natürlich der Uhrzeit:
Gruß,
- Christopher
nein, es handelt sich um doppeltgenaue Gleitkommazahlen (Typ double, 64 Bit).Thomas Boschen hat geschrieben:Ich lese die Werte als Single aus (Ist doch richtig oder?).
Der Wert gibt die Anzahl der Tage seit dem 30. Dezember 1899 an (warum auch immer ).Thomas Boschen hat geschrieben:Wie aber ist es möglich, diese Werte wieder in vernünftige Zeitinformationen zu konvertieren?
Der 01. Januar 1900, 00:00 Uhr entspricht also dem Wert 2,0 (Achtung, nicht 0,0 und auch nicht 1,0!).
Die Nachkommastellen entsprechen dann natürlich der Uhrzeit:
- x,5 entspricht 12 Uhr mittags
- x,75 entspricht 6 Uhr abends
- usw.
Gruß,
- Christopher
Re: TCP-Server und Uhrzeiten
Hallo Christopher,
danke für die schnelle Antwort.
Grüße,
Thomas
danke für die schnelle Antwort.
Aber warum dann insgesamt drei Werte? "Uhrzeit Stunde", "Uhrzeit Minute" und "Uhrzeit Sekunde"? Meinst du die selben Werte wie ich?Der Wert gibt die Anzahl der Tage seit dem 30. Dezember 1899 an (warum auch immer ).
Grüße,
Thomas
Grüße,
Thomas (eh. ElektrikTrick)
Thomas (eh. ElektrikTrick)
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
Re: TCP-Server und Uhrzeiten
Hallo Thomas,
Es gibt nämlich auch noch den Wert "Uhrzeit (digital)", und dessen Funktionsweise habe ich oben beschrieben .
Die Werte, die Du meinst, sind speziell für die Darstellung von Analoguhren gedacht und deshalb etwas unintuitiv...
Uhrzeit Stunde ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Stundenzeigers an. Die Nachkommastellen geben die Minuten und Sekunden an:
Uhrzeit Minute ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Minutenzeigers an. Der Wert muss mit 5 multipliziert werden, um die eigentliche Minute zu erhalten:
Uhrzeit Sekunde ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Sekundenzeigers an. Der Wert muss mit 5 multipliziert werden, um die eigentliche Sekunde zu erhalten (s.o.). Es werden nur ganze Minuten betrachtet.
Ich selbst bevorzuge den Wert Uhrzeit digital, da weiß man dann auch, ob es Vormittag oder Nachmittag ist. Außerdem verhält sich dieser Wert monoton, was für bestimmte Anwendungen wichtig ist.
Gruß,
- Christopher
nein, ich hatte Deinen Beitrag nicht genau genug gelesen .Thomas Boschen hat geschrieben:Aber warum dann insgesamt drei Werte? "Uhrzeit Stunde", "Uhrzeit Minute" und "Uhrzeit Sekunde"? Meinst du die selben Werte wie ich?
Es gibt nämlich auch noch den Wert "Uhrzeit (digital)", und dessen Funktionsweise habe ich oben beschrieben .
Die Werte, die Du meinst, sind speziell für die Darstellung von Analoguhren gedacht und deshalb etwas unintuitiv...
Uhrzeit Stunde ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Stundenzeigers an. Die Nachkommastellen geben die Minuten und Sekunden an:
- 0,0 entspricht "Zwölf Uhr"
- 0,5 entspricht "Halb Eins"
- 1,0 entspricht "Ein Uhr"
- usw.
Uhrzeit Minute ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Minutenzeigers an. Der Wert muss mit 5 multipliziert werden, um die eigentliche Minute zu erhalten:
- 0,0 entspricht der vollen Stunde
- 0,2 entspricht "1 Minute nach der vollen Stunde"
- 1,0 entspricht "5 Minuten nach der vollen Stunde"
- usw. (wie auf handelsüblichen Uhren eben)
Uhrzeit Sekunde ist eine einfachgenaue Gleitkommazahl (single) und gibt die Position des Sekundenzeigers an. Der Wert muss mit 5 multipliziert werden, um die eigentliche Sekunde zu erhalten (s.o.). Es werden nur ganze Minuten betrachtet.
Ich selbst bevorzuge den Wert Uhrzeit digital, da weiß man dann auch, ob es Vormittag oder Nachmittag ist. Außerdem verhält sich dieser Wert monoton, was für bestimmte Anwendungen wichtig ist.
Gruß,
- Christopher
Re: TCP-Server und Uhrzeiten
Analog... Klar das ich nur kauderwelsch herausbekommen habe
Mit dem anderen Wert hatte ich auch schon gespielt. Hier hatte ich einfach angenommen das es sich um einen String handelt. Konnte natürlich nicht funktionieren. Werde es jetzt mal mit Double versuchen, gut möglich daß das Date-Object damit arbeiten kann.
Danke für deine Hilfe
Grüße,
Thomas
Mit dem anderen Wert hatte ich auch schon gespielt. Hier hatte ich einfach angenommen das es sich um einen String handelt. Konnte natürlich nicht funktionieren. Werde es jetzt mal mit Double versuchen, gut möglich daß das Date-Object damit arbeiten kann.
Danke für deine Hilfe
Grüße,
Thomas
Grüße,
Thomas (eh. ElektrikTrick)
Thomas (eh. ElektrikTrick)
Re: TCP-Server und Uhrzeiten
Jetzt funktioniert es wunderbar, vielen Dank noch mal Christopher
Thomas
Thomas
Grüße,
Thomas (eh. ElektrikTrick)
Thomas (eh. ElektrikTrick)