2012-05-24 14 views

risposta

5

Spell Checker di Google http://code.google.com/p/google-api-spelling-java/

SpellChecker checker = new SpellChecker(); 

SpellResponse spellResponse = checker.check("helloo worlrd"); 

for(SpellCorrection sc : spellResponse.getCorrections()) 
    System.out.println(sc.getValue()); 

E 'molto simile a quando si utilizza Gmail o Google servizi (come translate.google.com o di ricerca) che ti dà il suggerimento alternativo se si dispone di un errore di battitura.

Cosa succede in background?

La classe SpellChecker trasforma la richiesta in XML e la invia a il servizio di controllo ortografico di Google. La risposta è anche in XML, che viene quindi deserializzato in POJO semplici.

La richiesta al primo esempio di cui sopra appare come:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    <spellrequest textalreadyclipped="0" ignoredigits="1" 
          ignoreallcaps="1" ignoredups="0"> 
    <text>helloo worlrd</text> 
    </spellrequest> 

E la risposta XML assomiglia:

<?xml version="1.0" encoding="UTF-8"?> 
    <spellresult error="0" clipped="0" charschecked="13"> 
    <c o="0" l="6" s="1">hello Helli hell hallo hullo</c> 
    <c o="7" l="6" s="1">world whorled wold warlord would</c> 
    </spellresult> 

Non hanno provato però.


UPDATE:
Google avrebbe iniziato a pagare per questo. Non ho tempo di codice per controllare questo. Qualcuno può confermare. Per quanto riguarda Google, sembra che abbiano deprecato la vecchia API per quella nuova e pagata.

consultare: Google Translate API FAQ

Che cosa è successo a precedenti versioni gratuite di Translate API?
Google Translate L'API v1 non è più disponibile a partire dal 1 ° dicembre 2011 ed è stata sostituita dall'API di Google Traduttore v2. L'API di Google Translate v1 è stata ufficialmente ritirata il 26 maggio 2011. La decisione di ritirare l'API e sostituirla con il servizio a pagamento è stata presa a causa del notevole onere economico causato da un ampio abuso.

+0

Questa soluzione google non funziona offline? – Rakesh

+0

Non funzionerà offline. Sì. – Nishant

+0

È ancora libero? Google ora vuole denaro per l'utilizzo dell'API di Google Traduttore. Immagino che siano davvero laggiù ... – thedp

3

È possibile utilizzare JOrtho. L'ho usato prima in una delle app swing.

2

Una buona soluzione offline è Jazzy. Prova questo example e scarica il dictionary.

Ecco il Maven dependency per la libreria:

<dependency> 
    <groupId>net.sf.jazzy</groupId> 
    <artifactId>jazzy</artifactId> 
    <version>0.5.2-rtext-1.4.1-2</version> 
</dependency> 
+0

Un altro esempio può essere trovato [qui] (http://alvinalexander.com/blog/post/java/jazzy-spell-checking-tool-test-2) – cgl

Problemi correlati