Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Seltsames Datumsformat in .dbf Datei

Frage Entwicklung Datenbanken

Mitglied: mkrasselt1

mkrasselt1 (Level 1) - Jetzt verbinden

24.09.2010 um 16:10 Uhr, 5259 Aufrufe, 6 Kommentare

Ich binn auf ein seltsames datums Zeit Format gestoßen, und möchte wissen, wie man es entschlüsselt.

Hallo Leute,
Ich bin in der Datenbankdatei eines Wetterstations-Auslese-Programms
(TFA-Dostman für Nexus-Wetterstation)
auf die Spalte mit den Datums-Uhreitsangaben gestoßen,
doch ich konnte damit nichts anfangen.
So sieht ener dieser Werte aus.
Soweit ich weiß, enthält er:
Datum TT.MM.YYYY
Uhzeit SS:MM:SS
38617,316666667

Doch wie genau weiß ich nicht.
Wenn es euch hilf, ich lese die Datenbank mit PHP aus,
ist ein .dbf file, und geht auch super in excel zu öffnen.

Ich hoffe auf Antwort.
Danke

Michael
Mitglied: bastla
24.09.2010 um 16:34 Uhr
Hallo mkrasselt1!

Soferne damit ein Timestamp für
23.09.2009 07:36:00
gemeint wäre, handelt es sich um eine Darstellung als "1904-Datumswert" - vor dem Komma findest Du die Anzahl der Tage seit dem 01.01.1904, und nach dem Komma die Uhrzeit (als Bruchteil eines Tages).

Sollte der Wert
22.09.2005 07:36:00
repräsentieren, entspricht die Zahl vor dem Komma der Tageanzahl ab 01.01.1900.

Hinsichtlich der Uhrzeit als Berechnungsbeispiel (allerdings in VBS):
01.
S = Int(.316666667 * 86400) 
02.
Std = Int(S / 60 / 60) 
03.
Min = Int((S - Std * 60 * 60) / 60) 
04.
Sek = S - Std * 60 * 60 - Min * 60 
05.
WScript.Echo S,Std,Min,Sek
Grüße
bastla
Bitte warten ..
Mitglied: mkrasselt1
24.09.2010 um 16:56 Uhr
ok, lass mich mal rechnen,
gibt es dafür eine funktion, mit dem amn das ausrechnen kann ?
oder muss ich die selberschreiben ?
Bitte warten ..
Mitglied: bastla
24.09.2010 um 16:59 Uhr
Hallo mkrasselt!
gibt es dafür eine funktion, mit dem amn das ausrechnen kann ?
Kann ich für PHP nicht beantworten - allerdings ließe sich das (nochmals in VBS) auch so formulieren:
01.
S = Int(.316666667 * 86400) 
02.
Std = S \ (60 * 60) 
03.
Min = (S Mod (60 * 60)) \ 60 
04.
Sek = S Mod 60 
05.
WScript.Echo S,Std,Min,Sek
wobei "\" für eine ganzzahlige Division steht ...

Grüße
bastla
Bitte warten ..
Mitglied: mkrasselt1
24.09.2010 um 17:50 Uhr
gut, ich hab es mal in php umgesetzt,
aber irgentwie kommt da nicht das selbe raus,
wie in dem Programm, das zur wetterstation gehört.
Das kommt raus:1
7.600000008:36:0
01.
<?php 
02.
$timestamp = ".38617.316666667."; 
03.
$timearray = explode(".", $timestamp); 
04.
$s = "0.".$timearray['2']; 
05.
$s = $s * 86400; 
06.
echo $s."<br>\n"; 
07.
$stunde = $s / (60 * 60);  
08.
echo $stunde."<br>\n"; 
09.
$minute = ($s % (60 * 60)) / 60;  
10.
echo $minute."<br>\n"; 
11.
$sekunde = $s % 60;  
12.
echo $sekunde."<br>\n"; 
13.
echo $stunde.":".$minute.":".$sekunde; 
14.
?>
Und rauskommen sollte:
23.09.2005 16:56


Woran kann das liegen ?
Bitte warten ..
Mitglied: bastla
24.09.2010 um 18:03 Uhr
Hallo mkrasselt1!
7.600000008:36:0
sieht dem Ergebnis
7:36:0
das ich auch mit Excel erhalte (allerdings für den 22.09.2005) ja schon sehr ähnlich - es fehlt eigentlich nur die ganzzahlige Division für die Stunde (damit aus 7.600000008 nur 7 wird) ...
Die Differenz auf "23.09.2005 16:56" kann ich leider nicht erklären ...

Grüße
bastla
Bitte warten ..
Mitglied: mkrasselt1
27.09.2010 um 23:12 Uhr
So, hate mal wieder zeit zum Batseln.
Die Uhrezit stimmt exakt, und die Datum brauch ich jetzt doch nicht mehr, da ich die Datensätze eh aller 1s aktualiesiere, und sich so schnell keine Datum ändert.
Später interessiert mich das Datum eh nicht mehr, wäre höchstens für die Anzeigen.

Danke nochmal für deine Hilfe mit der Uhrzeitberechnung.

Michael
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst PDF Datei erzeugen über Kommandozeile (6)

Frage von Xaero1982 zum Thema Batch & Shell ...

Windows Server
gelöst Windows 2012R2 kann Datei nicht löschen (2)

Frage von Akcent zum Thema Windows Server ...

Windows Server
Powershell - suche nach gelöschter Datei aus LOG (3)

Frage von krischeu zum Thema Windows Server ...

Heiß diskutierte Inhalte
TK-Netze & Geräte
gelöst Telefonanlage gesucht (39)

Frage von Xaero1982 zum Thema TK-Netze & Geräte ...

Windows Netzwerk
Anmeldung an Domäne schlägt oft fehlt (Fehlermeldung: falsches Passwort) (24)

Frage von harald.schmidt zum Thema Windows Netzwerk ...

Exchange Server
gelöst Wie freigegebenes Postfach immer als primäre Sendeadresse verwenden? (18)

Frage von Flinxit zum Thema Exchange Server ...

Microsoft Office
Outlook 2016 - Keine Mails sichtbar (nach Suche schon) (17)

Frage von Hirschix3 zum Thema Microsoft Office ...