LabVIEWForum.de
Datum und Zeit einlesen und vergleichen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Datum und Zeit einlesen und vergleichen (/Thread-Datum-und-Zeit-einlesen-und-vergleichen)



Datum und Zeit einlesen und vergleichen - Caleb - 13.05.2008 20:48

Hallo Leute,

ich bin neu hier und ich hoffe, dass ich dieses Thema im richtigen Breich eröffne. Sollte es der falsche sein, und ich stoße damit jemandem vor dem Kopf tut mir das leid.Angel_not

Aber nun mal zu meinem Problem. Ich möchte im Zuge einer Semesterarbeit (bin Studtent und ein ziemlicher LabVIEW Neuling) aus mehreren txt-Dateien Daten und Uhrzeiten auslesen und dann miteinander vergleichen. Im Einzelnen möchte ich die Zeitdifferenzen zwischen den verschiedenen Ereignissen ausrechnen. Die *.txt schauen alle so aus:

13 May 2008 13:27:16
Educational Use Only
Satellite-Satellite1


Start Time (UTCG)
-----------------------
1 Jul 2008 12:00:00.000
1 Jul 2008 13:31:14.436
1 Jul 2008 15:05:50.151
1 Jul 2008 16:40:25.870

Das mit dem Auslesen klappt auch schon mal. Womit ich ein String mit den oben dargestellten Zeiten hab. Nun lese ich mittels Teilstring erstellen und nötigem Offset und Länge genau ein Datum aus, womit ich ein Sting habe, das nur eine der Zeilen enthält z.B. 1 Jul 2008 13:31:14.436.
Ich dachte mir ich erstellen mir nun einen Zeitstempel. Nur krieg ich das Datum und die zehntel sekunden absolut nicht da rein. Mit der Uhrzeit klappts schon mit einem Formatstring %<%H:%M:%S>T mit der Funktion "in String suchen". Dann wollte ich die Zeitstempel gegen die Weltzeit in Beziehung setzen und mir dann so die Differenzen in Sekunden ausgeben lassen.

Wäre sehr nett, wenn mir jemand weiterhelfen könnte, oder zumindest sagen, ob ich total auf dem Holzweg bin.

Danke für jede Hilfe schon mal im Vorraus!!!
MfG Hendrik

PS: Leider hab ich gerade keinen Screenshot da, weil ich nicht in der Uni bin. Wenn einer benötigt wird, dann häng ich den noch an. Eine Textdatei häng ich aber an, so wie die mir STK (Orbitanalyseprogramm) ausgibt.
[attachment=12501]


Datum und Zeit einlesen und vergleichen - Lucki - 14.05.2008 08:12

Habe Dir mal was gemacht, das müßte Dir weiterhelfen. Die TXT-Datei habe ich jetzt nicht verwendet (zu spät gesehen) , nur die 4 Zeilen des Beispiels.
[attachment=12502]
Lv85_img [attachment=12503]


Datum und Zeit einlesen und vergleichen - Caleb - 16.05.2008 10:12

Hallo Lucki,

vorweg erst mal ein dickes Dankeschön für die schnelle Hilfe. Hab ehrlich gesagt nicht so schnell mit einer Antwort gerechnet.

Habs gleich heute mal ausprobiert. Hatte ein kleines Problem, weil in meiner txt-Datei die Sekunden mit einem punkt und nicht mit einem Komma von den hunderstel sekunden getrennt sind. Hab das aber mit String ersetzen gelöst. Klappt jetzt alles wunderbar. Mir hat nur die While-Schleife gefehlt. Eigentlich logisch, wenn mans weiß^_^

Stelle für alle Interessierten mein VI mal hier rein. Auf das es bei Zeitstempeln keine Probleme mehr gibt.

Nochmal vielen vielen Dank für die Hilfe. Bin wie gesagt noch ziemlicher Anfänger, hab bisher zwar alles bis auf das hier alleine zusammen gefriemelt, aber jetzt weiß ich ja wo ich hochwertige Hilfe bekommen kann. Dickes Kompliment!!!

Fröhlicher Gruß
Hendrik

Lv85_img[attachment=12548]


Datum und Zeit einlesen und vergleichen - Lucki - 18.05.2008 10:06

' schrieb:. Hatte ein kleines Problem, weil in meiner txt-Datei die Sekunden mit einem punkt und nicht mit einem Komma von den hunderstel sekunden getrennt sind. Hab das aber mit String ersetzen gelöst.
Die richtige Interpretation von Dezimalzahlen mit Punkt, unabhängig von den lokalen Einstellungen im Betriebssystem, läßt sich im Formatstring mit " %.; " erzwingen, siehe VI. Darin enthalten zweite Variante, die etwas einfacher ist.
Lv85_img [attachment=12566]
Ich würde übrigens empfehlen - zumindesest mache ich das bei mir so - unter "Werkzeuge/Optionen/Frontpanel" das Häkchen "Lokales Dezimalzeiche verwenden" zu entfernen, dann verwendet LV als Standard immer den Dezimalpunkt und nicht unser hinterwäldlerisches deutsches blödes Komma. In dem Fall brauchstest Du nicht mal im Formatstring etwas zu veränderno


Datum und Zeit einlesen und vergleichen - rolfk - 18.05.2008 10:33

' schrieb:Die richtige Interpretation von Dezimalzahlen mit Punkt, unabhängig von den lokalen Einstellungen im Betriebssystem, läßt sich im Formatstring mit " %.; " erzwingen, siehe VI. Darin enthalten zweite Variante, die etwas einfacher ist.
Lv85_img [attachment=39799:Get_suns...alues_1_.vi]
Ich würde übrigens empfehlen - zumindesest mache ich das bei mir so - unter "Werkzeuge/Optionen/Frontpanel" das Häkchen "Lokales Dezimalzeiche verwenden" zu entfernen, dann verwendet LV als Standard immer den Dezimalpunkt und nicht unser hinterwäldlerisches deutsches blödes Komma. In dem Fall brauchstest Du nicht mal im Formatstring etwas zu veränderno

Bin mit Deiner Einschätzung der Verwendung des Kommas grundsätzlich einverstanden Big Grin(Ursprünglich aus der Schweiz stammend habe ich aber einfaches Lachen hier).

Das mit dem Formatstring würde ich aber nicht unbedingt unterschreiben. Meine Philosophie dabei ist immer das Format in LabVIEW vorzugeben, das vom entsprechenden Textfile vorgegeben wird. Das verhindert das die Routine plötzlich auf einem anderen Computer nicht mehr funktioniert weil entweder die LabVIEW Optionen anders sind oder eine ander Ländereinstellung da ist.

Aber das kommt vielleicht auch daher dass ich professionelle Software für andere Leute schreibe, d.h. meine Applikationen laufen eigentlich grundsätzlich auf andermanns Computern und da ist es zumindest lästig und meist ganz einfach unakzeptabel um den Leuten Vorschriften zu machen welche Ländereinstellungen sie zu machen brauchen um meine Applikation laufen zu lassen.

Rolf Kalbermatter


Datum und Zeit einlesen und vergleichen - Lucki - 18.05.2008 13:05

' schrieb:Bin mit Deiner Einschätzung der Verwendung des Kommas grundsätzlich einverstanden
Danke. Der Siegeszug des Dezimalpunktes über das Komma ist ja schon durch die allgegenwärtige Existenz von Taschenrechnern gegeben. Sehr bedauerlich ist nur, daß diese von einem andern Planeten stammenden Germanisten, die die Rechtschreibereform gemacht haben, nicht im Entferntesten daran gedacht haben, daß man bei dieser Geglegenheit auch den Dezimalpunk als allgemeinen Standard in Deutschland hätte etablieren können.
@Caleb
Vergiss alle obigen VIs. Dein Problem läßt sich mit einer einzigen Funktion und ohne Schleife lösen:
[attachment=12569]
Lv85_img [attachment=12570]