Confronto stringhe di due TXT [VB.NET]

Pubblicità

Final50

Utente Attivo
Messaggi
373
Reazioni
4
Punteggio
51
Salve.
Sto scrivendo un programmino che mi controlli passo passo tutte le stringhe di un file txt confrontandole con un altro e vorreiche automaticamente cencellasse le stringhe differenti e le riportasse in un altro txt.
Qaulcuno ha qualche idea?
Ho provato a leggere le stringhe ma poi non so come confrontarle in quanto dovrei aprire tutti e due i file contemporanemanete controllarlo e poi salvarlo con le modifiche e dovrei rendere la cosa ciclica (anche se questo lo si può fare anche co un loop alla fine...)
Consigli??
 
Molto interessante ma rimane sempre il problema che il programma dovrebbe lavorare in windows altrimenti dovrei prima fare delle operazioni in win poi eseguire il comando diff da linux per poi riportare il risultato in windows ma cmq per quello che voglio fare è realizzabile.
Grazie per l'aiuto ma saresti cosi gentile da spiegarmi esattamente la procedura per eseguire il comando (sai nno sono molto esperto di linux e quelle volete che ci ho provato a passare sa win a linux il wifi mi ha bloccato....)
 
diff accetta due parametri che sono i due file da confrontare e ti restituisce le "differenze" in termini di righe, tutto qui.

quello che volevo dire io era di guardare l'algortimo altamente efficiente usato in diff e sfruttarlo per i tuoi scopi.

al massimo potresti fare così (algoritmo da due soldi altamente ottimizzabile):
- apri secondo file
- crei array di 256 elementi in cui ciascun elemento è una lista/array a sua volta
- leggi riga per riga il file aperto e:
-- individuti il codice ascii (X) del primo carattere della riga
-- accodi alla lista/array in posizione X dell'array del secondo passo la riga letta (se fai un inserimento ordinato è meglio come prestazioni)
- chiudi il file aperto
- apri il file delle differenze in scrittura
- apri il primo file
- leggi riga per riga e :
-- prelevi codice ascii del prima carattere e cerchi se la stringa in esame è presente nella lista salvata in precedenza e avente come punto di inizio la posizione individuata da X
-- se non la trovi scrivi la stringa nel file aperto in scrittura
- chiudi il file in lettura
- chiudi il file in scrittura
 
Pubblicità
Pubblicità
Indietro
Top