Avatar billede freelancegrafiker Nybegynder
01. april 2008 - 22:29 Der er 4 kommentarer og
1 løsning

For Each loop og Arraylist problem

Hej.. Jeg prøver at samle mappe og undermappe-navne i en arrayliste, ved hjælp af en For Each loop, men får et fejl ved "next"..

____________________


        Dim dirs As Array
        Dim totaldirs As New ArrayList

Her er min array og arrayliste, "dirs" skal fungere som midlertidige liste med mappenave, som den så lægger over i arraylisten..


        dirs = New IO.DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.Desktop)).GetDirectories
totaldirs.AddRange(dirs)

Her henter jeg navnene fra alle mapperne på skrivebordet, og lægger dem i arraylisten..



        Dim iodir As IO.DirectoryInfo

        For Each iodir In totaldirs
            dirs = New IO.DirectoryInfo(iodir.FullName).GetDirectories
            totaldirs.AddRange(dirs)
        Next


Undlader lige at forklarer dette, da det nok bare vil forvirre :-P
Fejlen opstår ved "Next" og er:
"Collection was modified; enumeration operation may not execute."

Ellers virker det som godt nok, og totaldirs-arraylisten får en liste med mappenavne og første niveau af undermapper, men så heller ikke mere..


Håber det er nogenlunde forståeligt..
Jan Philip..
Avatar billede freelancegrafiker Nybegynder
01. april 2008 - 22:31 #1
Hov.. jeg skriver at jeg henter navnene fra mapperne på desktop og lægger dem i arraylisten.. Det er jo bare den almindelige array..
Avatar billede arne_v Ekspert
01. april 2008 - 22:38 #2
For Each iodir In totaldirs

->

For Each iodir In dirs
Avatar billede arne_v Ekspert
01. april 2008 - 22:43 #3
du henter fra dirs og gemmer i totaldirs
Avatar billede freelancegrafiker Nybegynder
01. april 2008 - 22:52 #4
Argh.. Jamen fuldstændig rigtigt.. :)
Dig kan man sku regne med Arne :D

Nu giver det jo mening med Collection was modified.. jeg kan bare lære at læse ^^
Tusind tak.. point til dig :)!
Avatar billede arne_v Ekspert
01. april 2008 - 22:54 #5
saa smider jeg et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester