Einträge in Array's einfügen
-
Hi @all,
wie kann ich im folgenden String-Array an erster (oder auch an beliebiger) Stelle einen Eintrag hinzufügen?
array<String^>^ dirliste=Directory::GetDirectories(dir);
Ich möchte den intiellen Pfad (String^ dir) an erster Stelle im Array einfügen.
-
Hi,
eine Möglichkeit ist, mit einer Schleife alle Elemente (bis zur gewünschten Einfügeposition) von oben angefangen eins nach unten zu verschieben und dann an die Stelle den gewünschten String einzufügen. Dazu muss das array natürlich einen Platz mehr haben.
cadaei
-
Hi cadaei,
na wenn ich den Umweg über ein zweites Array gehe wäre das sicher kein Problem. Ich dachte unter CLI gibt es vielleicht eine Möglichkeit gleich so eine Art dynamisches Array oder so zu nutzen, indem ich nach Belieben neue Arrayelemente einfügen kann.
In dem Beispiel, das ich aufgeführt habe, wird die Größe des Arrays ja abhängig von den gefundenen Verzeichnissen erzeugt.
-
Mir ist so eine Funktion zumindest nicht bekannt. Ein zweites Array brauchst du nicht, erzeuge das Array einfach mit einem Platz mehr und füge dann die anderen Werte mit der CopyTo Methode auf die Plätze 1 - Ende.
array<String^>^ dirliste = gcnew array<String^>( Directory::GetDirectories(dir)->Length + 1 ); Directory::GetDirectories(dir)->CopyTo(dirliste, 1); dirliste[0] = dir;
cadaei
-
Sehr schön, danke!