LabVIEWForum.de - Problem mit einem 2D-Array

LabVIEWForum.de

Normale Version: Problem mit einem 2D-Array
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich hab leider folgendes Problem:

Wenn ich ein 2D-Array zuerst nur mit einem Wert belege, z.B.

"1212"

dann ist dieses Array 1x1 groß.

Wenn ich nun jedoch ein neues Array anfügen will das jedoch "breiter" ist als 1, z.B. das Array

"12345|Test1|Test2|Test3"

dann wird von diesem Array nur das erste Element "12345" in das 2D-Array eingefügt.

Wie kann ich dem 2D Array sagen, dass es beliebig "breit" werden kann während der Laufzeit?
Geht das überhaupt? Im Anhang mal zwei VIs,

"arraytest.vi" und
"build_Array_for_Packages.vi"

build_Array_for_Packages.vi dient dazu das 2D Array mit dem neuen "Datensatz" zu füllen.

Viele Grüße aus Kassel,
PhilSMA
Warum so kompliziert?
Anstatt der Funktion "Insert Into Array" verwende immer nur die Funktion "Build Array"...
Wenn du ungleiche Indizes aneinander haengen willst, wird alles auf den hoechsten Index normiert. Sprich alle Zeilen die den max. Index von dem "fuehrenden" Array nicht haben, werden einfach mit dem Standardwert vom jeweiligem Datentyp (in deinem Fall String - Stadard: leerer String) aufgefuellt bzw. indiziert!

LV laesst es net zu, dass du in einem 2 D Array eine unterschiedliche Anzahl an Spalten pro Zeile hast!
Wunderbar!

Manchmal denke ich wohl einfach zu kompliziert ;-)

Schönes Wochenende!
Phil
Hi freedive,

prinzipiell alles ok.
Man sollte jedoch beachten/wissen, das LV mit jedem Build Array das Array im Speicher kopiert.
Deshalb sollte man, zumindestens bei großen Datenmengen, besser gleich ein Array mit der maximal zu erwartenden Größe initialisieren und in dieses dann die Daten einfügen...

Gruß
Oliver
Referenz-URLs