Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Kiffi
Beiträge: 10715 Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9
Beitrag
von Kiffi » 24.10.2011 11:00
Hallo,
SQLite bietet interessante Datumsfunktionen. U.a. kann man die UTC relativ einfach ermitteln:
Code: Alles auswählen
UseSQLiteDatabase()
OpenDatabase(0, ":memory:", "", "", #PB_Database_SQLite)
DatabaseQuery(0, "Select DateTime('now', 'localtime'), DateTime('now', 'utc')")
NextDatabaseRow(0)
Debug "LocalTime:" + GetDatabaseString(0,0)
Debug "UTC:" + GetDatabaseString(0,1)
Das ganze sollte plattformübergreifend funktionieren.
Weitere Infos hier:
http://www.sqlite.org/lang_datefunc.html
Grüße ... Kiffi
a²+b²=mc²
ts-soft
Beiträge: 22292 Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43 CPU: AMD FX-6300 Six-Core Processor GraKa: GeForce GTX 750 Ti, 2 GB Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin
Beitrag
von ts-soft » 24.10.2011 11:35
Hallo Peter,
ich habe hier aber irgendwie ein falsches Ergebnis? Der Unterschied sind doch keine 4 Stunden, oder?
Debugger-Ausgabe hat geschrieben: LocalTime:2011-10-24 11:32:43
UTC:2011-10-24 07:32:43
Gruß
Thomas
Kiffi
Beiträge: 10715 Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9
Beitrag
von Kiffi » 24.10.2011 12:01
ts-soft hat geschrieben: Der Unterschied sind doch keine 4 Stunden, oder?
öhm, stibimmt. Wir sind momentan UTC+2. Da ist noch was
faul. Muss ich noch kontrollieren...
Danke für den Hinweis & Grüße ... Kiffi
a²+b²=mc²
Kiffi
Beiträge: 10715 Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9
Beitrag
von Kiffi » 24.10.2011 12:23
seltsam...
Code: Alles auswählen
UseSQLiteDatabase()
OpenDatabase(0, ":memory:", "", "", #PB_Database_SQLite)
DatabaseQuery(0, "Select DateTime('now'), DateTime('now', 'localtime'), DateTime('now', 'utc')")
NextDatabaseRow(0)
Define Ausgabe.s
Ausgabe + "DateTime('now', 'utc'): " + #TAB$ + GetDatabaseString(0,2) + #LF$
Ausgabe + "DateTime('now'): " + #TAB$ + #TAB$ + GetDatabaseString(0,0) + #LF$
Ausgabe + "DateTime('now', 'localtime'): " + #TAB$ + GetDatabaseString(0,1) + #LF$
MessageRequester("", Ausgabe)
ergibt hier in DE:
Code: Alles auswählen
DateTime('now', 'utc'): 2011-10-24 08:13:52
DateTime('now'): 2011-10-24 10:13:52
DateTime('now', 'localtime'): 2011-10-24 12:13:52
und in BR:
Code: Alles auswählen
DateTime('now', 'utc'): 2011-10-24 12:13:52
DateTime('now'): 2011-10-24 10:13:52
DateTime('now', 'localtime'): 2011-10-24 08:13:52
mir scheint, als sei das DateTime('now') das 'richtigere' UTC.
Grüße ... Kiffi
a²+b²=mc²
bobobo
jaAdmin
Beiträge: 3873 Registriert: 13.09.2004 17:48
Kontaktdaten:
Beitrag
von bobobo » 24.10.2011 13:18
guggemal
http://sqlite.org/lang_datefunc.html
ein Neuverwursten von now mit utc führt halt zu komischen Ergebnissen weil now eben
schon die MaschinenZeit ohne die Zeitverschiebung nach zone und DayLightSaving liefert.
nimm doch mal zur weiteren Verwirrung
Code: Alles auswählen
DateTime('now','utc','localtime','utc','utc','localtime');
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Kiffi
Beiträge: 10715 Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9
Beitrag
von Kiffi » 24.10.2011 14:03
bobobo hat geschrieben: [...] weil now eben schon die MaschinenZeit ohne die Zeitverschiebung nach zone und DayLightSaving liefert.
ah! Danke für die Erleuchtung!
Grüße ... Kiffi
a²+b²=mc²
bobobo
jaAdmin
Beiträge: 3873 Registriert: 13.09.2004 17:48
Kontaktdaten:
Beitrag
von bobobo » 24.10.2011 14:34
bedank dich bei sqlite.org
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.