Jump to content
GSForum - Segélyvonal

visual basic gondok, help!


whiteoperator

Recommended Posts

whiteoperator

Sziasztok!

Kezdõ visual Basic programozó vagyok és egy olyan programot írtam, aminek azt kellene csinálnia, hogy beolvassa a data.txt fájlt és a ";" -nál két részre bontja, ami elõtte van, és ami utána, ezt pedíg az olvasott(420,2) tömb elsõ és második részébe teszi. A data.txt -t beolvassa, az tömb (1,1) és (1,2) részét meg is írja, de nem megy tovább. A végén valamelyiket kiíratom vele a label1 text tulajdonságához. A data,txt tartalma:

 

1 ; 1

2 ; 4

3 ; 9

4 ; 16

. .

. .

. .

420 ; 176400

 

 

 

A programkód:

 

 

Private Sub Form_Load()

 

Dim Index As Variant

Dim Index2 As Variant

Dim Hol As Boolean

Dim Kar As String

Dim olvasott(420, 2)

 

Open "C:\Documents and Settings\Én\Asztal\gyakorlás\data.txt" For Input As #1

 

Index2 = 1

 

Do Until EOF(1)

Index = 1

Line Input #1, readedline$

Do Until Hol = True

Kar = Mid(readedline, Index, 1)

If Kar = ";" Then

Hol = True

olvasott(Index2, 1) = Trim(Mid(readedline, 1, Index - 1))

olvasott(Index2, 2) = Trim(Mid(readedline, Index + 1, Len(readedline)))

Else

Hol = False

Index = Index + 1

End If

Loop

Index2 = Index2 + 1

Loop

 

Label1.Caption = olvasott(22, 1)

 

End Sub

 

 

 

 

Elõre is kösz!

Link to comment
Share on other sites

  • 2 weeks later...
Calyd

Huh, Basic-ben annyira nem mozgok otthonosan, de ahogy meg szeretted volna valósítani a ';' karakter megtalálását az egy kiválasztás tétel. Ez kicsit másképpen néz ki (lásd az irományomat a programozási tételekrõl), de végülis mindegy, ez nem nagy ügy.

Egy nagy hiba, ami így feltûnt az az, hogy a belsõ ciklus elõtt a Hol értékét mindenképpen hamisra kéne állítanod. Egyrészt azért, mert a programban addig sehol nem kapott értéket, így elvileg nem definiált az értéke (valójában valószínûleg hamis), és ez csúnya dolog. Másrészt azért, mert a ciklus elsõ lefutása biztosan igazra állítja, hiszen minden sorban van egy ';' karakter, és innentõl kezdve soha nem fog többet lefutni a belsõ ciklus.

Aztán egy teljesen jelentéktelen észrevétel, javaslat, nem is tudom: én nem Hol-nak neveztem volna a logikai változót, hanem mondjuk Siker-nek, Megvan-nak vagy ilyesmi. De ahogy írtam, ennek semmi jelentõsége.

Link to comment
Share on other sites

  • 3 weeks later...
whiteoperator

Kösz, mindjárt kipróbálom!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...