Der er kun den uelegante måde. At lave et array som er en plads kortere og så flytte alle værdierne over i det nye - med undtagelse af den plads som er slettet. Jeg har ikke kunne finde noget, men jeg er ret sikker på, at der er nogle som har lavet en ArrayList som man kender det fra java i asp. Det er bare lige at finde den. Ellers må man jo selv igang.
Class ArrayList Private myList() Private ArrLength
Private Sub Class_Initialize() ArrLength=0 ReDim myList(ArrLength) End Sub
Public Sub Add(element) ArrLength=ArrLength+1 ReDim Preserve myList(length) myList(ArrLength-1)=element End Sub
Public Property Get Length Length = ArrLength End Property Public Sub Remove(pos) If pos<=ArrLength and pos>0 Then Dim tmpArray(),a,b ReDim tmpArray(ArrLength) For a = LBound(myList) To UBound(myList) tmpArray(a)=myList(a) Next ArrLength=ArrLength-1 ReDim myList(ArrLength) b=0 For a = 1 to ArrLength+1 if a<>pos then myList(b)=tmpArray(a-1) b=b+1 end if Next End If End Sub
Public Function Item(pos) If pos<=ArrLength And pos>0 Then Item = myList(pos-1) End If End Function
End Class
Set ar = new ArrayList ar.add("test1") ar.add("test2") ar.add("test3") For a=1 To ar.Length msgBox ar.Item(a) Next ar.Remove(2)
Så kommer der et svar. Den er ret nem at bruge og den kan nemt udbygges. Jeg hader generelt at arbejde med arrays i asp, de er lidt tunge at danse med.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.