+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 7 su 7

cercare valori in un file di testo

  1. #1
    Zax78 non è in linea Novello
    Ciao a tutti avrei la neccessità di recuperare dei valori presenti in un file di testo. Esempio ho un file con i codici dei comuni italiani tipo questo:

    A087;AGRATE BRIANZA;MB;;;;
    A088;AGRATE CONTURBIA;NO;;;;
    A089;AGRIGENTO;AG;;;;
    A090;AGRONE;TN;;;;
    A091;AGROPOLI;SA;;;;
    A092;AGUGLIANO;AN;;;;
    A093;AGUGLIARO;VI;;;;
    A094;AIAS;AO;;;;
    A095;AIBA;GO;;;;


    vorrei che passando esempio il codice A089 mi venisse restituito AGRIGENTO o AG

    è fattibile con VB6 ?


    per la ricerca sto usando questo :
    Dim Riga As String
            Open "C:\DB.csv" For Input As 1
          
            
            Do While Not EOF(1)
                Line Input #1, Riga
                If InStr(Riga, Text1.Text) Then
                    MsgBox "RECORD TROVATO"
                    Else
                    MsgBox "NESSUN RECORD PRESENTE"
                    Exit Do
                    
                End If
              
            Loop
            Close 1
    End Sub
    
    ma legge solo la prima riga, dovrei scorrere tutto il file e una volta trovato il valore, dovrei navigare la riga tramite i separatori... qualche aiuto ?

  2. #2
    Beh, rifletti ... se non lo trovi al primo giro ed esci dal ciclo con l'exit do, è ovvio che non arriverai mai al secondo ...

    Quindi, rivedi la logica con cui fai la ricerca. Se trovi il dato, imposta un flag che ti dica che il dato è stato trovato e usa la Exit Do; se non trovi il dato, continua il ciclo.
    All'uscita del ciclo, il flag ti dirà se il dato è stato trovato o no.
    ℹ️ Leggi di più su AntonioG ...

  3. #3
    Ferrari_and non è in linea Scolaretto
    Ciao
    per recuperare i vari valori della separati da ;
    cerca informazioni sulla funzione Split del VB6 [la funzione crea un array di elementi partendo da una stringa con separatori noti al suo interno].

  4. #4
    Zax78 non è in linea Novello
    Grazie Antonio sono riuscito creandomi un form con una text box, un bottone di ricerca e una label con il risultato, all'evento click del command button ho dato:

    Dim s1 As String
    
    Open "c:\DB.csv" For Input As #1
    
    Do While Not EOF(1)
    
    Line Input #1, s1
    
    If InStr(1, s1, Text1.Text) Then MsgBox ("Trovato" & s1): Close #1: Exit Sub
    Label6.Caption = s1
    Loop
    
    MsgBox ("Non trovato")
    
    Close #1
    
    Funziona il valore trovato lo restituisce alla label6.caption in visualizzazione sul form, ora però ho neccessita di recuperare della stringa intera solo i valori dopo il separatore che è il ;

  5. #5
    Leggi la risposta precedente e usa la Split
    ℹ️ Leggi di più su AntonioG ...

  6. #6
    L'avatar di sspintux
    sspintux non è in linea Very Important Person Ultimo blog: SqlServer express e connessione DAC
    Ciao Zax78,

    mi permetto un appunto;

    quando apri un file invece di usare un numero fisso (#1) è opportuno usare Freefile

    https://docs.microsoft.com/en-us/off...efile-function
    ℹ️ Leggi di più su sspintux ...

  7. #7
    roccolamann non è in linea Scribacchino
    Scusatemi se intervengo; ho una routine che forse potrebbe esservi utile:

    Sub CercoSTRINGAnelFIle()
        Dim a As String
        Dim linea As String
        Dim linea2 As String
        
        a = InputBox("Scrivi la riga da cercare")
        
        Open ("C:\Nazioni.txt") For Input As #1
            Do
                Input #1, linea
                linea2 = linea2 & linea
            Loop Until EOF(1) = True
            If InStr(linea2, a) Then
                MsgBox "la stringa " & a & " è presente nel file Nazioni"
            Else
                MsgBox "La stringa non è presente"
            End If
        Close #1
    End Sub
    
    Ultima modifica di TheTruster; 29-01-2021 22:10  Motivo: Tag [CODE][/CODE] e pessima indentazione

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 12
    Ultimo Post: 23-03-2018, 09:19
  2. Cercare occorrenze di un nome in un file di testo
    Da Matteo83 nel forum Visual Basic .Net
    Risposte: 7
    Ultimo Post: 13-02-2017, 18:38
  3. Cercare e sostituire testo in una Textbox da vba
    Da Peppe1977 nel forum Microsoft Word
    Risposte: 0
    Ultimo Post: 21-08-2014, 10:06
  4. Cercare parti di testo in un file txt
    Da bertoz nel forum Visual Basic .Net
    Risposte: 16
    Ultimo Post: 21-05-2007, 15:38
  5. Risposte: 4
    Ultimo Post: 20-09-2005, 14:19