Autore Topic: Ricerca tra gli argomenti su un file di testo  (Letto 497 volte)

Offline Will32

  • Maestro Gambero
  • ****
  • Post: 273
  • Evviva Linux e la Programmazione
    • Mostra profilo
    • TuttoComputer
Ricerca tra gli argomenti su un file di testo
« il: 24 Gennaio 2010, 10:18:27 »
Ciao, sono ancora io.
Ho un problema : come faccio a far fare una ricerca al programma per un argomento in un file di testo.

File di testo ( ex ) :

#ME#
ciao
#ME#

#MA#
arrivederci
#MA#


In pratica, se c'è una textbox e scrivo #MA# , mi deve scrivere su un altra textbox ( magari ) , la parola arrivederci.

Grazie
« Ultima modifica: 31 Gennaio 2010, 20:27:30 da Will32 »

Visita le comunità di Gambas, programma e diventa nostro amico :2birre:

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Ricerca tra gli argomenti su un file di testo
« Risposta #1 il: 24 Gennaio 2010, 11:01:37 »
secondo me sbagli candeggio, sarebbe più comodo utilizzare un database tipo sqlite (puoi leggerti la guida che ho scritto io per imparare i rudimenti di tale db)

se vuoi utilizzare un file di testo devi prima impostare il file in modo tale che ti semplifichi la vita nelle ricerche.

se ad esempio ad ogni parola(o frase) ne corrisponde solo un altra potresti inserire per ogni righa  le due parole separate da un carattere particolare
ad esempio:


casa;home
pippo;pluto
ciao;hello

a questo punto puoi caricare il file di testo cosi:
Codice: [Seleziona]
Public sub form_show()
dim stringa as string
dim righe as new string[]
dim riga as new string[]

stringa= file.load("percorso_file/nomefile.txt")
'poi separi il file in righe e le memorizzi in un array

righe=split(file,"\n")

'adesso per ogni riga prendi la prima parola e la posizioni in un array e la seconda in un altro

for i=0 to righe.max
    riga=split(righe[i],";")
    parole1.add(riga[0])
    parole2.add(riga[1])
next

parole1 e parole2 sono due array string che avrai dichiarato come public ad inizio form in modo da avere in memoria tutto il dizionario per tutto il tempo di esecuzione del programma

adesso metti che vuoi cercare la parola corrispondente ad una inserita in textbox1 puoi fare
Codice: [Seleziona]
 i=parole1.find(textbox1.text)
questo ti ritorna l' indice della parola da cercare per cui
Codice: [Seleziona]
if i<>-1 then
  textbox2.text=parole2[i]
else
  message.info("nessuna parola in memoria corrispondente","OK")
endif
se i è uguale a -1 vuol dire che la parola in textbox1 non esiste nel dizionario

questo è solo un modo tra i tanti possibili per fare quello che vuoi, giusti per darti un idea

Offline Will32

  • Maestro Gambero
  • ****
  • Post: 273
  • Evviva Linux e la Programmazione
    • Mostra profilo
    • TuttoComputer
Re: Ricerca tra gli argomenti su un file di testo
« Risposta #2 il: 24 Gennaio 2010, 11:09:23 »
Grazie mille !!!!!!!!
 :D

Visita le comunità di Gambas, programma e diventa nostro amico :2birre: