Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568

    [JAVA] differenza tra file di testo

    sto realizzando un programmino che date 2 jtext area, ne confronta il contenuto e mostra le diffrenze in qualche modo tra le 2...

    il problema che ho è a base di logica... nel senso che non ho la benchè minima idea di come partire... nessuno che mi sa dare una piccola dritta ????
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  2. #2
    Dovresti cercare di risolvere il problema prescindendo dalla sua implementazione.
    Cioe', devi chiarirti cosa intendi per differenze.
    La cosa piu' semplice e' confrontare carattere per carattere e mostrare le sequenze che non concordano.
    In questo modo, pero', la stringa:

    "Ciao sono DeK"

    e' completamente diversa dalla stringa

    " Ciao sono DeK"

    a causa dello spazio iniziale.
    Ovviamente, soluzioni piu' "smart" prevedono algoritmi sempre piu' sofisticati...
    Se e' un esercizio direi che la soluzione carattere per carattere e' sufficiente...
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  3. #3
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    volevo distinguere parola per parola e capire quali sono le parole aggiunte e quelle mancanti..
    facendo una 3 jtextarea in cui riporto l'insieme dei due testi, usando colori differenti..
    in verde le parti aggiunte e in rosso le parti mancanti...

    solo che non riesco a distinguere proprio tra le parti in più e le mancanti !!!!! VVoVe:
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  4. #4
    Premesso che la JTextArea non supporta piu' stili diversi per il testo (quindi, stesso font, stesso colore etc...): o cambi componente, o cambi visualizzazione. Per esempio potresti evidenziare (selezionare) la prima parola differente.

    Per quanto riguarda l'algoritmo: ha scelto di cercare le differenze a livello di parola? L'algoritmo e' lo stesso che confrontando carattere per carattere, sempre che tu scriva una funzione in grado di estrarti una parola per volta dall'area di testo, o meglio, dalla stringa contenuta nell'area di testo.
    Per fare cio', puoi usare la funzione split() della classe String che prende come parametro una regex (espressione regolare) e restituisce un array di stringhe.
    Tale regex deve rappresentare cio' che per te e' il concetto di "parola": ad esempio, un insieme di caratteri precedute e seguite da spazi.

    Stranamente, questo e' il terzo thread in tre giorni in cui escono fuori le regex. Io ho trovato questo sito in cui vengono spiegate nella loro implementazione Java, e per la terza volta lo riporto:

    http://www.javaregex.com/

    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  5. #5
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    ok ho risolto così...

    prendi le 2 stringhe da confrontare

    fai split e metti risultati in 2 vettori ( 1 e 2 )

    cerco parola 1 in 2

    se la trovo subito ok, passo alla successiva

    se non la trovo significa che in strnga 2 questa parola è mancante e la memorizzo come differenza

    se la trovo dopo un po significa che ho delle parole in più sulla stringa 2 e le memorizzo come differenza



    che dici può andar bene come ragionamento no ??
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  6. #6
    Beh, certo. Devi decidere tu se va bene.
    In questo modo per esempio non trovi le modifiche ad una parola. Quindi se ho:

    "Domani andro' a farmi una bella passeggiata"

    La stringa:

    "Dopodomani andro' a farmi una bella passeggiata"

    risultera' completamente diversa perche' non contiene la sottostringa "Dopodomani"!
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  7. #7
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    si si è quello che voglio... grazie dell'interessamento e dei
    consigli cmq !!!
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.