|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Sep 2008
Messaggi: 130
|
[VB6] ricerca dentro un file
Ciao ragazzi,avrei un problema,ho creato un programma il quale crea un file di testo in cui vengono memorizzati il nome ,il costo del lavoro e l'importo pagato dal cliente.Fin qui tutto ok, ma ho un problema con la ricerca.Ho usato questo algoritmo,ma mi stampa su schermo il nome del ultimo in lista,non riesco a capire perchè.Potreste darmi una mano?grazie...
Codice:
Private Sub Command1_Click()
Dim trovato As Boolean
trovato = False
Open App.Path & ("\archivio.txt") For Input As #1
Do While Not (EOF(1))
Input #1, nome, costo_lavoro, importo_pagato
If costo_lavoro < importo_pagato Or costo_lavoro > importo_pagato Then
Label1.Caption = nome
trovato = True
End If
Loop
If trovato = False Then
Label1.Caption = "non trovato"
End If
Close #1
End Sub
__________________
Procio:Intel QX9770|Ali: OCX PROXTREAM 1000W|Ram:Corsair DDR3 8GB 1600 MHZ|VGA: GTX 480|HDD:Seagate Barracuda 7200.10 500GB|Mobo:Zotac 790 i Ultra SLI|Case:Enermax Chakra LED blu adattato per Liquid cooling Transazioni a buon fine: modern warfare 2 |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Apr 2010
Messaggi: 94
|
probabilmente stampa l'ultimo perchè è l'unico che risponde alla condizione
''If costo_lavoro < importo_pagato Or costo_lavoro > importo_pagato '' comunque io userei un approccio diverso; prima di tutto userei una variabile record es: Type Record Nome as string *30 Costo as single ImportoPagato as single End Type Quindi Private Function TrovaRecords(byval NomeFile as string) as Record() Dim NumRecord as integer Dim Records() as Record NumRecord=FileLen(NomeFile/38) Redim Records(1 to NumRecord) as Record Open NomeFile for Binary as FreeFile Get #FreeFile,1,Records Close #FreeFile TrovaRecords=Records End Function |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:58.



















