Salve,
avevo intenzione di costruire un traduttore dall'inglese all'italiano (una cosa un po' grossolana) del tipo una parola inglese corrisponde ad una parola italiana e se non lo si trova si scrive la parola italiana in questo modo: /*parola*/.
Ora, ci sono due file di testo, un testo di inglese con delle frasi:
e un dizionario:I love you
the dog sleep
the cat is on the table
my name is Earl
E questo è il codice Java:I io
love amo
you tu
the il
dog cane
sleep dorme
cat gatto
is è
on su
table tavolo
name nome
Se avvio il programma però mi traduce solo la prima parola, dov'è il problema secondo voi?codice:import java.io.File; import java.io.FileNotFoundException; import java.util.Scanner; import java.io.PrintWriter; public class Traduttore { public static void main(String[] args) throws FileNotFoundException { Scanner testo = new Scanner(new File(args[1])); Scanner dizionario = new Scanner(new File(args[0])); PrintWriter testoTradotto = new PrintWriter(new File("testoTradotto.txt")); String parola = ""; boolean tradotto = false; while(testo.hasNext()) { parola = testo.next(); while(dizionario.hasNextLine()) { String parolaTradotta = dizionario.next(); if (parolaTradotta.compareToIgnoreCase(parola) == 0) { parola = dizionario.next(); tradotto = true; } } if(tradotto == false){parola = ("/*"+parola+"*/");} testoTradotto.print(parola+" "); } testoTradotto.close(); testo.close(); dizionario.close(); } }
Ringrazio anticipatamente per la pazienza data![]()

Rispondi quotando