Avatar billede angelenglen Nybegynder
19. marts 2004 - 12:57 Der er 5 kommentarer og
2 løsninger

hent fra ini til listbox

jeg har en ini-fil der ser sådan her ud:
[Settings]
barwidth=10300
[News]
newz.dk=www.newz.dk
eb.dk=http://www.eb.dk
[News_Type]
Newz.dk=Internet URL
eb.dk_Type=Internet URL


det jeg så gerne vil have, er at jeg ved "form_load" kan smide alle emner i [News] ind i en listbox

Listboxen skulle med ovenstående ini-fil så se sådan her ud:
linie 1: newz.dk
linie 2: eb.dk

Hvordan gør jeg det?
Avatar billede angelenglen Nybegynder
19. marts 2004 - 12:59 #1
forresten, det ville være fedt hvis det kunne lade sig gøre som en funktion, således at jeg kan bruge den flere steder... noget i stil med:

Private Sub Form_Load()
  ListIniContent("News", "ListboxNews")
End Sub

..eller noget... ikke et must..
Avatar billede martin_moth Mester
19. marts 2004 - 16:53 #2
Læs fra fil:

http://www.eksperten.dk/spm/252223

Der er MASSER af spørgsmål hvis du bruger søgefunktionen

Indlæs i listbox:
Listbox.additem "Denne tekst tilføjes"
Avatar billede angelenglen Nybegynder
19. marts 2004 - 17:02 #3
ja, jeg har bare problemer med at loope igennem en sektion af ini-filen, indtil nu har jeg kun set eksempler der enten henter en bestemt linie, eller looper igennem hele filen, linie for linie, fra start til slut...
jeg har brug for at den kun tager de linier der er i den angivne sektion af ini-filen, og mine forsøg på at ændre andre eksempler er ikke gået så godt indtil nu..
Avatar billede martin_moth Mester
19. marts 2004 - 17:33 #4
Der er ikke andre måder. Du må loope, og nøjes med at bruge de linier der er interessante for dig...

Du kan jo læse linie for linie, og står der noget der er interessant i en linie skriver du linien til din listbox.
Avatar billede martin_moth Mester
19. marts 2004 - 17:40 #5
Altså f.eks:

Dim NewsSection as Boolean
  Dim Dummy as string
  Filnummer = FreeFile
  Open "C:\Fil.ini" For Input As #Filnummer

  newssection = false
  while not eof(#filnummer) 
    Line Input #Filnummer, Dummy
    if ltrim(rtrim(dummy)) = "[News_Type]" then newssection = false
    if newssection = true then list1.additem Dummy
    if ltrim(rtrim(dummy)) = "[News]" then newssection = true
  Wend 
  Close #Filnummer
Avatar billede angelenglen Nybegynder
19. marts 2004 - 18:15 #6
ja, jeg tror vi nærmer os noget interessant, dog får jeg lige en fejl i din kode:
linien "  while not eof(#filnummer) " <-- bliver rød i vb, og jeg får en syntax error.

derudover, den kode du har skrevet, finder den ikke blot frem til hvor i filen sektionen News starter - hvorledes benytter jeg det til at loope igennem den sektions indhold?
Avatar billede martin_moth Mester
23. marts 2004 - 12:07 #7
Ret
while not eof(#filnummer)
til
while not eof(filnummer)

Mht. dit andet spørgsmål, så looper koden jo NETOP igennem sektionens indhold. Den læser filen linie for linie, og hvis linien har noget med dine news at gøre skrives de til listview
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