Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Vb-ongelma

Heikki [14.03.2003 21:34:41]

#

Eli jos minulla on jossain muuttujassa luettuna vaikka tiedoston ensimmäinen rivi, miten saan eroteltua siitä sanat vaikka muuttujiin sana1-sanax (x=sanojen määrä).

Ja sitten sellanen ongelma, että miten saan selville montako riviä tiedostossa on?

Antti Laaksonen [15.03.2003 01:04:55]

#

lainaus:

Eli jos minulla on jossain muuttujassa luettuna vaikka tiedoston ensimmäinen rivi, miten saan eroteltua siitä sanat vaikka muuttujiin sana1-sanax (x=sanojen määrä).

Muuttujiin sanoja ei oikein saa, mutta taulukkoon kyllä. Split-komento on tähän tarkoitukseen näppärä: sanat voi erottaa niiden välissä olevista välilyönneistä.

Dim teksti As String, sanat() As String
teksti = "Lauseessa on neljä sanaa."
'jakaa tekstin taulukkoon välimerkki erottimena
sanat = Split(teksti, " ")
'sanat(0) on "Lauseessa"
'sanat(1) on "on"
'sanat(2) on "neljä"
'sanat(3) on "sanaa."
MsgBox sanat(2)

lainaus:

Ja sitten sellanen ongelma, että miten saan selville montako riviä tiedostossa on?

En tiedä tähän mitään valmista komentoa - ehkä ainoa järkevä tapa on käydä tiedosto rivi riviltä läpi. EOF-funktio ilmoittaa tiedoston loppumisen ja Line Input lukee yhden rivin muuttujaan.

Dim rivi As String, maara As Integer
Open "c:\hakemisto\tiedosto.txt" For Input As #1
Do Until EOF(1)
    Line Input #1, rivi
    maara = maara + 1
Loop
MsgBox "Tiedostossa on " & maara & " riviä."

Heikki [15.03.2003 16:35:28]

#

Kiitoksia...

Sellainen vielä että miten saisin tietää montako sanaa lauseessa sitten lopulta oli?

Antti Laaksonen [15.03.2003 16:40:07]

#

Se onnistuu yksinkertaisesti tarkistamalla, montako arvoa taulukossa on. Tässä tapauksessa sanojen määrä on siis UBound(sanat).

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta