
| Re: Zeit auswerten Kategorie: Programmierung (von André H. - 2.01.2004 0:17) | |
|
Als Antwort auf Zeit auswerten von TN - 1.01.2004 20:04
| |
|
Hallo TN, > ich möchte die Uhrzeit auslesen und damit Aktionen > auslösen oder unterbinden. Anzeigen lasse ich die Zeit so: > ... > kann ich jetzt schreiben: > h=system.hour(); > um mit "h" als int arbeiten zu können? Oder muÃ? ich mit dem String arbeiten? Ich verstehe Deine Frage nicht ganz. Um Zeitvergleiche durchzuführen, muÃ? man i.d.R. Zahlen vergleichen. Mit Strings ist das nicht möglich. Wenn Du z.B. eine Schaltuhr aufbauen möchtest, ist es ratsam ein eigenes Zeitformat aufzubauen. Das einfachste wäre folgendes: int time; ... time=system.hour()*100 + system.minute(); So kannst Du minutengenau vergleichen. Der Bereich von time geht von 0 (=0:00 Uhr) bis 2359 (=23:59 Uhr) Wenn Du ebenfalls die Sekunden benötigst, kann man das ganze auch erweitern: long time; ... time=system.hour()*10000 + system.minute()*100 + system.second(); Allerdings wäre es eleganter, ein Time-Serial-Format aufzubauen, in dem es bei den Stundenwechseln (bzw. beim 2ten Bsp. auch bei dn Minutenwechseln) zu keinen "Lücken" kommt: long timeserial; ... timeserial=system.hour()*3600 + system.minute()*60 + system.second(); Das ganze könnte man noch mit Tag, Monat und Jahr nach dem selben Schema erweitern. :-) Um noch ein kleines Beispiel für eine einfach Zeitschaltuhr zu zeigen: int time; time=system.hour()*100 + system.second(); if time>=630 and time<2145 // Port zwischen 6:30 und 21:45 einschalten ports.set(Port,-1); else ports.set(Port,0); MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | |
Antwort schreiben Antworten: | |