Avatar billede thomaxz Nybegynder
28. oktober 2004 - 21:26 Der er 10 kommentarer og
1 løsning

Læs fil linje for linje og split en tekststreng

hvordan kan jeg læse en fil linje for linje?
så jeg f.esk kan indlæse en fil ind i en listbox?

hvordan kan jeg opdele/split en tekst streng hvor 'delimiteren' er cr+lf tegne?

-Thomas
Avatar billede arne_v Ekspert
28. oktober 2004 - 21:28 #1
Jeg ville bruge en StreamReader og ReadLine metoden til at hente en linie af
gangen.
Avatar billede thomaxz Nybegynder
28. oktober 2004 - 21:30 #2
jep, har jeg funde ud af, men jeg kan kun finde ud at at læse første linje?
Avatar billede arne_v Ekspert
28. oktober 2004 - 21:31 #3
Hvis du har fået læst alle linier ind i en streng kan du splitt med:

Dim crlf As String = ""
crlf = crlf & Convert.ToChar(13)
crlf = crlf & Convert.ToChar(10)
Dim lines() As String = alllines.Split(crlf.ToCharArray)
Avatar billede arne_v Ekspert
28. oktober 2004 - 21:32 #4
Øh.

Næste gang du kalder ReadLine så læser du da næste linie.

(forudsat at du ikke åbner filen igen)
Avatar billede arne_v Ekspert
28. oktober 2004 - 21:32 #5
Ofte bruger man:

        Dim line = stmrdr.ReadLine
        While line <> Nothing
            ' process line
            line = stmrdr.ReadLine
        End While
Avatar billede arne_v Ekspert
29. oktober 2004 - 21:01 #6
OK ?
Avatar billede thomaxz Nybegynder
29. oktober 2004 - 21:48 #7
Ved ikke helt, kan ikke rigtig finde ud af det med stream?

-Thomas
Avatar billede arne_v Ekspert
29. oktober 2004 - 21:52 #8
Hvordan ser din kode ud nu ?  (kun relevant udsnit)
Avatar billede thomaxz Nybegynder
29. oktober 2004 - 22:00 #9
ofd1.ShowDialog
Dim myReader As New IO.StreamReader(ofd1.FileName)
Dim lineRead as string = myReader.ReadLine.ToString 
textbox1.Text=textbox1.Text & ";;;;;" & lineRead
While lineRead <> Nothing
            lineRead = myReader.line
            textbox1.Text=textbox1.Text & ";;;;;" & lineRead
End While

------------------------------------------------

jeg har goså prøvet med

myFileStream = New System.IO.FileStream(ofd1.FileName,System.IO.FileMode.Open,System.IO.FileAccess.ReadWrite,System.IO.FileShare.None)

Dim myReader As New System.IO.StreamReader(myFileStream)


---------

-Thomas
Avatar billede arne_v Ekspert
29. oktober 2004 - 22:04 #10
Prøv:

Dim myReader As New IO.StreamReader(ofd1.FileName)
Dim lineRead as string = myReader.ReadLine
While lineRead <> Nothing
    textbox1.Text=textbox1.Text & ";;;;;" & lineRead
            lineRead = myReader.ReadLine
End While
Avatar billede thomaxz Nybegynder
29. oktober 2004 - 22:05 #11
Mange Tak for hjælpen :)
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