Löscht eine festgelegte Spalte in einem 2D Array
#include <Array.au3>
_ArrayColDelete ( ByRef $aArray, $iColumn [, $bConvert = False] )
$aArray | zu änderndes Array |
$iColumn | zu löschende Spalte |
$bConvert | [optional] Falls True wird bei nur noch einer verbleibenden Spalte das Array in ein 1D Array umgewandelt |
Erfolg: | die Anzahl der verbleibenden Spalten. |
Fehler: | -1 und setzt das @error Flag auf ungleich null. |
@error: | 1 - $aArray ist kein Array 2 - $aArray ist kein 2D Array 3 - $iColumn außerhalb der Arraygrenzen |
Diese Funktion ändert keine Zähler innerhalb des Arrays. Jedoch wird durch die Funktion, falls diese erfolgreich war, die neue Anzahl an Spalten im Array zurückgegeben.
#include <Array.au3>
Local $aArray[4][3]
For $i = 0 To 3
For $j = 0 To 2
$aArray[$i][$j] = $i & $j
Next
Next
_ArrayDisplay($aArray, "Original")
_ArrayColDelete($aArray, 2)
_ArrayDisplay($aArray, "Spalte 2 gelöscht")
; Kopiert das 2-Spalten Array
Local $aArray_2Col = $aArray
; Standardmäßig wird eine Spalte im 2D Array belassen
_ArrayColDelete($aArray, 0)
_ArrayDisplay($aArray, "Spalte 0 gelöscht - 2D Array")
; Wandelt das 1-Spalten Array in ein 1D Array um
_ArrayColDelete($aArray_2Col, 0, True)
_ArrayDisplay($aArray_2Col, "Spalte 0 gelöscht - 1D Array")