 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
pepper-jk
Anmeldungsdatum: 08.07.2009 Beiträge: 33
|
Verfasst am: 30.07.2009, 08:15 Titel: Schleifenfehler (in nächste Zeile springen) |
|
|
Halli hallo,
bin die geborene Nervensäge^^
also ich habe ein Programm, dass mir aus folgender .txt auslesen soll:
Code: | [user;password;right;folder;projectnumber;:]
test;okay;M;myfolder;10;:
usertest2;pw;R;newfolder;3;: |
Und zwar soll es die erste Zeile überspringen, was es auch macht. Nur es soll danach (also ab der 2. Zeile) in jeder Zeile bis zum ";" auslesen und in eine Array schreiben, die das ganzen dann später auf Variablen übergibt, da ich den Inhalt der Arrays in bestimmten Variablen für das fortlaufende Programm brauche. Nun liest er aber nur die 2. Zeile aus und das 2 mal, anstatt in die nächste zu springen.
Ich finde den Fehler wie immer nicht
Code: | Input ".txt-file : ", filetxt
Shell "if not exist " & filetxt & " then echo Input: Error(txt)"
Open filetxt For Input As #1
Do Until EOF(1)
Line Input #1, zeile
If InStr(zeile, "[user;password;right;folder;projectnumber;:]") <> 0 Then
Else
For i As Integer = 1 To Len(zeile)
If Mid(zeile, i, 1) = ";" Then
userp(n)=over
n=n+1
over=""
ElseIf Mid(zeile, i, 1) = ":" Then
i=Len(zeile)
Else
over = over + Mid(zeile, i, 1)
endif
Next i
user=userp(0)
password=userp(1)
usrright=userp(2)
folder=userp(3)
pno=ValInt(userp(4))
Print user
Print password
Print usrright
Print folder
Print pno
End If
Loop
Close #1 |
MfG pepper-jk |
|
Nach oben |
|
 |
pepper-jk
Anmeldungsdatum: 08.07.2009 Beiträge: 33
|
Verfasst am: 30.07.2009, 09:39 Titel: Lösung |
|
|
Ich habe die Lösung schon gefunden
- Ich habe den ArrayZähler "n" nicht wieder auf 0 gesetzt.
LÖSUNG:
Code: | Input ".txt-file : ", filetxt
Shell "if not exist " & filetxt & " then echo Input: Error(txt)"
Open filetxt For Input As #1
Do Until EOF(1)
Line Input #1, zeile
If InStr(zeile, "[user;password;right;folder;projectnumber;:]") <> 0 Then
Else
n=0
For i As Integer = 1 To Len(zeile)
If Mid(zeile, i, 1) = ";" Then
userp(n)=over
n=n+1
over=""
ElseIf Mid(zeile, i, 1) = ":" Then
i=Len(zeile)
Else
over = over + Mid(zeile, i, 1)
EndIf
Next i
Print zeile
user=userp(0)
password=userp(1)
usrright=userp(2)
folder=userp(3)
pno=ValInt(userp(4))
Print user
Print password
Print usrright
Print folder
Print pno
End If
Loop
Close #1
|
MfG pepper-jk |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|