05. april 2009 - 01:24Der er
7 kommentarer og 1 løsning
Dynamic Array
Hej,
kan man få et array dynamisk? Jeg får hele tiden subscript out of range fejl når jeg tilføjer data til et array:
testkode til at vise hvornår jeg får fejl:
Dim strArray() As String
For intI = 0 To 99 strArray(intI) = "test" & intI Next intI
jeg får selvfølgelig ikke fejl hvis jeg skriver Dim strArray(100) As String
men er der en anden måde at gøre det dynamisk, sådan at jeg kan inkrementere det via et for loop? Det læser nemlig en txt fil som der bliver tilføjet til hele tiden, så det er lidt irriterende at skulle ind og lave arrayet større hver gang jeg skal tilføje data.
hmm.. hvordan kan jeg bruge den i den her sammenhæng:
Open strFilename For Input As #1 Do While Not EOF(1) Line Input #1, strContext
For intI = 1 To Len(strContext) If (Mid(strContext, intI, 1) = "#") Then 'tmpNavn(intJ) = Mid(strContext, 1, intI - 1) End If If (Mid(strContext, intI, 1) = ";") Then 'tmpMsg(intJ) = Mid(strContext, intI + 1) End If Next intI intJ = intJ + 1 Loop Close #1
Ovenstående kode kan nemlig i teorien give tommer pladser. Og jeg ved ikke om det faktisk vil forekomme og skal håndteres eller det aldrig vil forekomme.
tomme pladser? altså.. txt filen bliver opdateret via det samme program som skal læse filerne ind. Når jeg opdaterer, har jeg 3 textfelter som vi nu kalder txt1, txt2 og txt3.. det bliver skrivet ind i filen som: txt1#txt2;txt3
I For loopet vil første If'en læse "txt1" og den anden vil læse "txt3".. txt2 bruger jeg til andre formål.. her vil jeg bare gerne have et dynamisk array (eller et andet alternativ) så jeg ikke behøver at opdatere array størrelsen hver gang. Er det ikke muligt?
arne_v > der er ikke noget galt i min kode, jeg har måske bare ikke forklaret det rigtigt nok. Jeg har en liste af film som jeg skriver ned som: filmnavn#genre;beskrivelse (ny linje)
Når jeg læser det ind skal jeg kun vise filmnavn og genre i en listbox, men når jeg dobbeltklikker på listen skal filmnavn og beskrivelse vises i en messagebox.
når jeg henter data fra filen, skal den i search funktionen hente filmnavn og genre, men ikke gøre noget ved beskrivelse (som virker fint)
når jeg henter data fra listboxen, skal jeg bruge et array til at få beskrivelsen og filmnavnet ind i det men lade genre være som det er. Der er aldrig noget Nothing og formatet vil aldrig være anderledes end filmnavn#genre;beskrivelse
kabbak > det virker! smid et svar og du får dine points.
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.