split sequentiele bestanden

Status
Niet open voor verdere reacties.

dejobse

Gebruiker
Lid geworden
7 jul 2008
Berichten
722
Hallo iedereen,

Ik ben aan het proberen om gegevens (punten) in te geven in een array(vanuit een sequentiel bestand. Het wilt alleen niet zo gaan als dat ik het wil...

vb. van een lijn in het txt bestand:
Peter;8,5;6;5,8;4,8;9,4
de punten worden dus gescheiden door een ;


dit is het betreffende stukje code waar ik mee in de knoej zit...
Code:
       Do While Not EOF(1)

            If IsNothing(strnaam) Then
                ReDim Preserve strnaam(0)
                strnaam = LineInput(1).Split(";")
            Else
                ReDim Preserve strnaam(intteller)
                strnaam = LineInput(1).Split(";")
            End If
            intteller = (strnaam.GetUpperBound(0) + 1)
        Loop
 
Zoiets?

PHP:
Dim P As String = "Peter;8,5;6;5,8;4,8;9,4"
Dim DeArray() As String = P.Split(";")
 
Kan je misschien iets duidelijker uitleggen wat precies de bedoeling is? Want de code werkt hier 100% :)
 
oke, dus:

lijn in seq. bestand: Peter;8,5;6;5,8;4,8;9,4
moet worden in de array:
Private decpunten(,) As Decimal
Private strleerling() As String
strleerling(0) = Peter
decpunten(0,0) = 8,5
decpunten(1,0) = 6
decpunten(2,0) = 4,8
decpunten(3,0) = 9,4

decpunten is een array waarvan behaalde punten worden opgeslage, in dit geval bij de eerste decpunten(punten wiskunde dus 8,5, peter)
 
Ik snap niet precies waarom je een 2D array gebruikt om cijfers in op te slaan.
Heb even een voorbeeld gemaakt, denk dat het zo wat beter gaat werken :)

PHP:
    Structure User
        Dim Naam As String
        Dim Punten() As Double
    End Structure

    Dim Gebruikers As New List(Of User)

    Private Sub VoegGebruikerToe(ByVal GegevensString As String)
        Dim A() As String = GegevensString.Split(";")
        Dim B(A.Length - 2) As Double
        For i As Integer = 1 To A.Length - 1
            B(i - 1) = Convert.ToDouble(A(i))
        Next
        Gebruikers.Add(New User With {.Naam = A(0), .Punten = B})
    End Sub

En om een gebruiker toe te voegen:
PHP:
        VoegGebruikerToe("Peter;8,5;6;5,8;4,8;9,4")

Resultaat:

XcMUJ.png
 
Ik snap niet precies waarom je een 2D array gebruikt om cijfers in op te slaan.

omdat hier meer dan 1 lijn ingeladen moet worden, dit is goed voor 1 persoon maar wat als ik nu 20 personen moet inladen?
En dat van die gebruiker is nieuw voor me, kan je dit een beetje uitleggen, ik vind dat wel interessant denk ik :D
 
Laatst bewerkt:
Iets zoals dit?

PHP:
Do While Not EOF(1)
VoegPersoonToe(DataVanStreamReaderOfzoIets)
Loop
 
jep, maar dat heeft niet direct iets met die array te maken :D het gaat om 1d of 2d, als jij een manier weet om meerdere personen in een 1d array te zetten mij ook goed maar het lijkt mij moeilijker dan in een 2d, het enige aan een 2d, ik weet niet hoe ik de gesplitte cijfers erin kan zetten, ik ken zoizo niks van de split functie :p
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan