PDA

View Full Version : [JAVA] Un metodo per traduzioni multilingua a sbafo :D


x-t
25-08-2009, 10:17
Ieri ho bottuttato gių 4 righe di codice che magari potranno risultare utili a molti :D ... Lo posto come metodo statico:


public static String traduci(String stringa, String origine, String destinazione)
{
Charset charset = Charset.forName("UTF-8");
try{
stringa=URLEncoder.encode(stringa, "UTF-8");
System.out.println(stringa);
URL url=new URL("http://translate.google.it/translate_t?ie=UTF-8&text="+stringa+"&sl="+origine+"&tl="+destinazione+"#");
URLConnection connection =(HttpURLConnection) url.openConnection();
connection.setRequestProperty("User-agent","Mozilla/4.0");
InputStream is=connection.getInputStream( );
BufferedReader bf=new BufferedReader(new InputStreamReader(is));
String linea=bf.readLine();
String tr="";
while(linea!=null){
int ind=linea.indexOf("<div id=result_box dir=\"ltr\">");
if(ind!=-1){
String linea1=linea.substring(ind + 29);
ind=linea1.indexOf("</div>");
while(ind==-1){
tr=tr+linea1;
linea1=bf.readLine();
ind=linea1.indexOf("</div>");
}
return HTMLEntities.unhtmlentities(tr+linea1.substring(0, ind));
}
linea=bf.readLine();
}
is.close();
return tr;
}
catch(Exception e) {System.out.println(e);return null;}
}


Utilizza il servizio di traduzione di google... Come vedete č semplicissimo: prende in ingresso la stringa da tradurre, e gli id delle lingue di origine e destinazione (ad esempio it per l'italiano, en per l'inglese, ja per il giapponese ecc)... Il metodo č ottimo per effettuare delle traduzioni massive :D
Dovete procurarvi la classe HTMLEntities (https://htmlentities.dev.java.net/) e basta. A questo punto traduzioni massive a sbafo in tutte le lingue possibili con google da java :D

Qualche esempio:
traduci("ciao mondo", "it", "en") -> hello world
traduci("vi voglio bene", "it", "ja") -> 愛しています


Spero che possa risultare utile a qualcuno :)

Kralizek
25-08-2009, 11:10
bellino... casomai quando torno a casa lo traduco in c# ;)

nucarote
25-08-2009, 11:47
Complimenti anche se...
http://code.google.com/p/google-api-translate-java/

x-t
25-08-2009, 12:19
Complimenti anche se...
http://code.google.com/p/google-api-translate-java/

XD
Ok... lavoro inutile il mio... Facciamo finta di aver fatto un'esercitazione di programmazione :)
Grazie per la segnalazione :D

nucarote
25-08-2009, 12:31
XD
Ok... lavoro inutile il mio... Facciamo finta di aver fatto un'esercitazione di programmazione :)
Grazie per la segnalazione :D

Di nulla, anche se mi aspettavo qualcosa di pių ufficiale da Google, boh forse cercando meglio...