|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
|
[VB6] ** leggere una singola riga di un .txt
Se mi rispondete ve ne sarei molto grato:
come faccio a far leggere il contenuto di una singola riga di un file di testo? invece che Open "file.txt" For Input As #1 che mi leggerebbe il contenuto dell'intero file, come faccio a leggere una riga qualsiasi? Ho la necessità di leggere una riga per volta ed assegnare la stringa relativa ad una textbox... Grazie! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2002
Messaggi: 7
|
open nomefile for input as #nfile
line input #nfile, variabile close #nfile
__________________
TORBIDA NULLAFACIENZA SEMIPRONA MENTECATTA |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Codice:
nfile=FreeFile |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
|
grazie ragazzi, il codice funziona, ora sto ideando il ciclo per leggere tutte le righe:
Codice:
Dim i As Integer nomefile = InputBox("Inserisci il nome del file:") Open nomefile For Input As 1 While Not EOF(1) nfile = FreeFile Line Input #1, variabile Text1(i).Text = variabile i = i + 1 Wend Close 1 solo che ho un problema se ho 100 righe nel file txt e posso stampare solo 60 etichette per pagina, come faccio a interrompere il ciclo, resettare i campi e riprendere il ciclo da dove si era fermato? Ci vorrebbe una variabile temporanea in cui memorizzare il valore di i che è 60, oppure all'inizio del prossimo ciclo fare i = 65 ? Help me please! Grazie! |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
IL codice è errato, cosi utilizzi sempre 1 e nn il FreeFile
correggilo cosi: Codice:
Dim i As Integer
dim nfile as integer
nomefile = InputBox("Inserisci il nome del file:")
nfile = FreeFile
Open nomefile For Input As #nfile
While Not EOF(#nfile)
i = i + 1
Line Input nfile , variabile
Text1(i).Text = variabile
if i=60 then
'** Fagli fare quello che vuoim tanto poi riprende a ciclare **
end if
Wend
Close# nfile
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
|
Quote:
non ho capito bene cosa rappresenta questo FreeFile... e poi... quando il contatore raggiunge il valore di 60, come faccio a far riprendere la lettura del file .txt dalla 61a riga? e poi ancora, se proprio non hai altro da fare... per ora ho impostato la proprietà multiline delle textbox a True, ma come faccio a dire al programma di andare a capo quando incontra un certo carattere (che so, due caratteri dopo la lettera N che è riservata)? Comunque sei un grande, mi hai aiutato più volte, voterò per te alle prossime elezioni del moderatore della sezione (virtuali, tanto non lo mettono mai P.S. Se non hai tempo per rispondere a queste altre domande non fa niente, grazie comunque per l'aiuto dato fino ad ora, e grazie anche a Michelle |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Grazie ma io sono qui da poco, chi merita un voto è sicuramente "cionci"
Cmq FreeFile da un numero univoco al tuo file, cosi anzichè mettere sempre #1 lui ti mette un numero che sicuramente in quel momento è univoco, altrimenti se tu forzi un tuo numero rischi che quel file sia utilizzato da altri e nn va troppo bene. Il contatore raggiunge il 60, entra nel ciclo, fa quello che deve fare, e poi uscendo incontra il wend e torna da capo, ma il puntatore al tuo file è fermo a 60, ciclando riparte da 61. L'importante è che nn riapri il file, altrimenti lui parte da 0!!! Per fare andare a capo basta che metti cosi: "text1=text1 & vbcrlf" dove vbcrlf significa Visual Basic Cursor Return Line Feed, devi mettere l'istruzione quando vuoi che vada a capo nel suo text1!! ciaooooooooooo |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
|
domattina provo e sperimento, grazie mille!
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Prego, di nulla, se ho tempo e so le cose lo faccio volentieri
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:48.



















