whiteoperator Posted October 29, 2007 Posted October 29, 2007 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!
Calyd Posted November 11, 2007 Posted November 11, 2007 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.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now