2D Array zerlegen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: 2D Array zerlegen (/Thread-2D-Array-zerlegen) |
RE: 2D Array zerlegen - BsaiboT - 28.10.2013 15:05 (28.10.2013 12:55 )che-salih schrieb: Also was ich habe ist: Mir entzieht sich gerade der Zusammenhang zwischen gegeben und gewollt. Was sind das erste für Zahlen? Weshalb haben die eine unterschiedliche Länge? Wie ermittelst du aus deinen gegebenen zahlen die Zeitwerte? RE: 2D Array zerlegen - che-salih - 28.10.2013 15:20 (28.10.2013 15:05 )BsaiboT schrieb: Mir entzieht sich gerade der Zusammenhang zwischen gegeben und gewollt. Die Zahlen stammen aus einem 2D Array U8, was ich dann in ein String umgewandelt und verknüpft habe. 2D Array sieht so aus: 15 44 30 15 15 44 30 219 15 44 32 89 Stunde|Minute|Sekunde|Sekundenbruchteil Nach der Stringverknüpfung: 15443015 154430219 15443289 Vielleicht ist auch diese Verknüpfung überhaupt nicht nötig und überflüssig. Damit habe ich es zumindest versucht. Che RE: 2D Array zerlegen - BsaiboT - 28.10.2013 16:01 Ah - jetzt hab auch ich es begriffen. Du hattest bei deinem Beispiel lediglich nicht zueinander passende Werte genommen. Du könntest natürlich die gewünschten Zeichen wie Doppelpunkt und Komma bereits bei der Stringverknüpfung mit einfügen. Ansonsten müsstest du dafür sorgen, dass die Zeichenfolgen immer gleich lang sind, wenn ich mich recht entsinne, damit die Format-String-Funktion funktioniert. Gruß, //Tobias RE: 2D Array zerlegen - GerdW - 28.10.2013 16:33 Hallo Che, wie liegen denn deine Zeitdaten vor? Als Timestamp oder als einzelne Zahlen für H, M, S...? Mit einem Timestamp würde ich den Formatstring %<%H:%M:%S%3u>T verwenden... Ahh, habe Beiträge übersehen! Bei den 4 Einzelwerten schließt man eben diese 4 Einzelwerte an FormatIntoString an und benutzt den Formastring "%02d:%02d:%02d.%03d"... RE: 2D Array zerlegen - che-salih - 28.10.2013 16:39 Hi, ich glaube, dass es mit der Format-String Funktion garnicht möglich ist, ein gültiges Zeitformat darzustellen. Die Werte passen ja nicht zueinander, wie Tobias sagte. Die Werte müssen auch umgerechnet werden. Ich glaube da hilft nur ein Zeitstempel. Ich hatte es ja für ein Messreihe hinbekommen, sprich ein Transponder. Das war der Ansatz von GerdW, was auch funktioniert hatte. Kann ich den diesen Ansatz nicht zeilenweise abspielen lassen? Zudem ist der Zeilenindex ja nicht bekannt. Es hängt ja von der Messreihe ab. Die Spalten sind bekannt. Immer 4 Spalten. Also: --> 15 44 30 15 --> 15 44 30 219 --> 15 44 32 89 Gruss Che Hi GerdW, deinen Beitrag habe ich erst jetzt gesehen. Ich gucke mal, ob ich es damit gebacken kriege. Danke RE: 2D Array zerlegen - GerdW - 28.10.2013 16:44 Hallo Che, warum sollte FormatIntoString nicht funktionieren? Man muss nur den passenden (und oben genannten) Formatcode eintippen: [attachment=46990] (beide Varianten, oben TimeStamp, unten Einzelwerte...) RE: 2D Array zerlegen - che-salih - 28.10.2013 17:00 Ich lade mal mein VI hoch. Das hilft glaube ich uns alle. Das Hauptprogramm läuft unter Sequenz 1. Die Zeitinformation wird da aus der Data Frame abgegriffen und in ein Array geschrieben. Da hackt es bei mir leider! Danke Gruss RE: 2D Array zerlegen - BsaiboT - 28.10.2013 17:57 Mit Array direkt in String sähe es dann so aus: [attachment=46995] [attachment=46996] Hab gerade nur LV2010 installiert, kannst du dein VI nochmal für mich als 2010 hochladen? RE: 2D Array zerlegen - che-salih - 28.10.2013 19:01 Vielen Dank für eure Hilfe. Ich bin nicht mehr am Arbeitsplatz. Morgen werde ich weiter probieren. Ersmal bis morgen Freunde. BsaiboT, das sieht gut aus. Morgen weiß ich mehr. Du kannst es herunterladen denke ich. Die Version ist älter als 2010. Guten Abend zusammen Che RE: 2D Array zerlegen - BsaiboT - 28.10.2013 19:51 (28.10.2013 17:57 )BsaiboT schrieb: Mit Array direkt in String sähe es dann so aus: Beachte bitte, dass LV bei meinem Beispiel die fehlenden Stellen vorne anhängt. D.h., dass aus 39,590 Sekunden in dem Format |39|59|, dann 39,059 Sekunden werden. Sollten |39|59| jedoch gleich |39|059| sein, dann hast du kein Problem (wie ich es vermute, wollte aber dennoch darauf hinweisen). Ansonsten dafür sorgen, dass alle Zahlen die selbe Länge haben. |