Forum: PC-Programmierung Timestamp zu definierter zeit umrechnen


von hub (Gast)


Lesenswert?

Ich habe einen Zeitcode über time(). Die Zeit benötige ich in UTC, von 
daher passt das schon mal.

1407313133



Schritt 1:

Umwandlung in dieses Format:
201408060818



Schritt 2:

Die Zeit muss immer 5 oder 0 sein.
Dementsprechend abzurunden, bzw zu lassen. Sekunden sollen ignoriert 
werden.

Also zum Beispiel 1030 oder 1005.

In diesem Beispiel wäre das Ergebnis:
201408060815

Hat jemand eine Idee wie das am einfachsten gehen könnte?

von Freddy (Gast)


Lesenswert?

Hallo,

für Perl nehme ich immer gerne ein CPAN Modul:
http://search.cpan.org/~rwstauner/Time-Stamp-1.200/lib/Time/Stamp.pm

Das ist erprobt und läuft zuverlässig.

Ggf. mal in den Sourcecode reingucken und zu inspirieren lassen.

von hub (Gast)


Lesenswert?

Danke hab's geschafft. Ein kleines Problem hab ich aber noch.

08 sollte zu 05 werden
01 zu 00
00 zu 00
04 zu 00
06 zu 05
...

von DirkB (Gast)


Lesenswert?

Also abrunden.

Da ist es am einfachsten die Zeit vor der Umwandlung zu bearbeiten
1
zeit5 = (time()/5)*5;

Da funktioniert, weil das alles Ganzzahloperationen sind.

1407313133 / 5 =  281462626
 281462626 * 5 = 1407313130

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.