LabVIEWForum.de - Array nach bestimmten Zeichen durchsuchen...

LabVIEWForum.de

Normale Version: Array nach bestimmten Zeichen durchsuchen...
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen!

Eine Datei mit Messwerten, die einen Header enthält, soll in LV verarbeitet werden.
Dazu wird die Datei eingelesen und in einem 2D-Array gespeichert.
Jetzt möchte ich den Header entfernen um mit den reinen Messwerten in LV
weiterarbeiten zu können.
Der Header und die Messwerte sind durch ############## getrennt:

Ein Beispiel:

Header:
Datum
Zeit
Testreihe X
##############
5
6
0,4
3,5

Ich möchte nun diese Spalte des Arrays nach ########### durchsuchen und die Anzahl der Zeilen,
die der Header benötigt, entfernen.
Der Header hat keine konstante Zeilenanzahl, daher ist diese Prozedur notwendig.

Wie bekomme ich den nun die Anzahl der Zeilen für den Header heraus?

Habe schon einiges versucht, aber es klappt bisher nicht.

Wäre super, wenn jemand weiterhelfen kann!!! :-)

Viele Grüße,
Sebby
Hat sich soeben erledigt! :-)
' schrieb:Hat sich soeben erledigt! :-)

Hallo Sebby2008,
es wäre schön wenn du Deine Lösung posten könntest. Vielleicht hilft es mal jemand anderem!

Danke
Mike
Aber klar doch! :-)

[attachment=14368]
' schrieb:Aber klar doch! :-)

[attachment=41795:Check_header_LV_8_5.vi]

Hallo Sebby2008,
wie kommst du denn bei einem String der Länge 5 jemals in den Case "#Header" Wink?

Mike
Sorry!
die ursprüngliche CASE-Anweisung war anders (5 Zeichen!), habe sie nur verallgemeinert geändert,
da es sich um ein Projekt für eine Firma handelt...
#Header -> den wert auf 7 ändern! :-)
Hallo Sebby2008,
hier mal ein Vorschlag wie dein Code noch verbessert werden könnte. Ich hoffe es ist erwünscht. Rolleyes

Mike
so ist es natürlich noch eleganter! Smile
Die vorgestellten Lösungen sind umständlich. Der "falsche" Lösungsansatz entsteht schon mal durch Deine Vorgabe:
Zitat:Eine Datei mit Messwerten, die einen Header enthält, soll in LV verarbeitet werden.
Dazu wird die Datei eingelesen und in einem 2D-Array gespeichert.
Jetzt möchte ich den Header entfernen um mit den reinen Messwerten in LV
Der Header enthält ja gar keine 2D-Daten, und daraus erst mal welche machen zu wollen, um den entstehenden Schrott dann in einem zweiten Schritt zu entfernen, ist wirklich nicht optimal. Der bessere Weg ist:
1. Zeilenweises Einlesen der Datei bis zur Zeile "######". Die bis hierhin gelesenen Zeilen werden nicht gespeichert.
1. Einlesen des Restes (also der Text-Daten) und Konvertierung in 2-D Zahlen.
Achtung: Ich benutze Dezimalpunkte, keine Kommas.
Lv85_img[attachment=14378] [attachment=14379]
' schrieb:Die vorgestellten Lösungen sind umständlich. Der "falsche" Lösungsansatz entsteht schon mal durch Deine Vorgabe:

Der Header enthält ja gar keine 2D-Daten, und daraus erst mal welche machen zu wollen, um den entstehenden Schrott dann in einem zweiten Schritt zu entfernen, ist wirklich nicht optimal. Der bessere Weg ist:
1. Zeilenweises Einlesen der Datei bis zur Zeile "######". Die bis hierhin gelesenen Zeilen werden nicht gespeichert.
1. Einlesen des Restes (also der Text-Daten) und Konvertierung in 2-D Zahlen.
Achtung: Ich benutze Dezimalpunkte, keine Kommas.
Lv85_img[attachment=41808:Test.txt][attachment=41807:test.vi]

Hi Lucki,
besser würde ich nur sagen, wenn der Code tatsächlich das macht, was der andere auch tut. Wink Das Prüfen ob es sich tatsächlich um eine "#Header" Datei kümmert und das die "###" Zeichen am Anfang der Zeile stehen. TongueWink

Mike
Seiten: 1 2
Referenz-URLs