SuperKatia ha scritto:
Mi sono iscritta in questo forum xkè mi sembra ci sia gente molto in gamba, veniamo al dunque, vorrei creare un dizionario inglese spagnolo in Java ma non so proprio da dove cominciare (magari vedere un progetto analogo mi sarebbe di grande aiuto), comunque ho già dei file .csv con una parola spagnola underscore parola italiana che ho trovato in rete, a ogni file corrisponde una lettera dell'alfabeto (ad esempio perro_cane), vorrei usare questi possibilmente come risorse del dizionario quindi mi piacerebbe sapere che codice dovrei utilizzare per la ricerca di una qualsiasi parola, l'interfaccia la realizzerei in swing.
Un grandissimo bacio a chi mi sarà d'aiuto.
PS
sto imparando a programmare in java all'università, su java ho dato già 2 materie e adesso c'è la presentazione di un progetto a piacere e così io avevo pensato a un traduttore italiano-spagnolo questo per darvi un idea della mia conoscenza di java tutt altro che approfondita
Ciao Katia, spero di non essere arrivato tardi visto che questo post l'hai inviato a gennaio ...
Visto che cercavo un dizionario ita-spa in internet, sono incappato in questo 3d .. se chiedi aiuto per la realizzazione dell'interfaccia in Java sicuramente troverai persone molto più in grado di me di farlo, ma se vuoi un'aiuto per trovare un dizionario "custom" ita-spa, forse ti posso aiutare, dato che anch'io ne avevo bisogno ed mi sono appena procurato il modo di "cosruirmelo a piacimento" ..
In pratica mi sono preso i dizionari di freedict (
http://sourceforge.net/project/showfiles.php?group_id=1419 ma in realtà ho installato il pacchetto in linux e mi sono andato a prendere i file). In pratica, non essendoci un dizionario ita-spa, me lo sono costruito partendo dal dizionario eng-ita e eng-spa, riformattandolo tramite un mio script in due csv, importantdoli in due tabelle di un DB sqlite, facendo una JOIN mirata tra le due tabelle (usando il termine inglese come chiave) per creare una nuova tabella ita-spa.
Ora avendo la tabella come sql, posso riformattare l'output come voglio ...
ad esempio con il comando :
sqlite3 -separator '' mydiz "select ita,\"_\",spa from itaspa order by ita;"
ottengo un output come quello da te richiesto del tipo:
...
conchiglia_concha
conchiglia_cáscara
concimare_abonar
conciso_conciso
conciso_sucinto
concludere_decudir
concludere_arrancar
concludere_descolgar
concludere_quitar
concludere_decudir
concordare_acordar
concordare_declarar
concordare_convenir
....
Fammi sapere se ti può interessare la cosa...
Sperando di fare cosa utile,
Gabriele
PS. lo script bash per convertire i csv da questo formato (originario di freedict) :
......
......
adjutant
- - - aiutante
administer
- - - amministrare, dirigere
administer
- - - amministrare gli ultimi sacramenti
administration
- - - amministrazione
- - - amministrazione, direzione, gestione
- - - governo
admirable
- - - ammirabile
......
......
a questo (separato da TAB)
......
......
adjutant aiutante
administer amministrare
administer dirigere
administer amministrare gli ultimi sacramenti
administration amministrazione
administration amministrazione
administration direzione
administration gestione
administration governo
admirable ammirabile
......
......
Ecco lo script:
---------------------------- 8< cut from here ----------------------------------------------
#!/bin/bash
[ -z "$1" ] && { echo "occorre un file come parametro"; exit 1; }
PRG=`basename $0`
SOURCE="$1"
[ -s "$SOURCE" ] || { echo "Il file deve esistere ed essere pieno"; exit 1; }
CSVFILE="`basename $SOURCE .txt`.csv"
> $CSVFILE
totlinee=`wc -l $SOURCE | awk '{print $1}'`
conta=0
parl1=""
parl2=""
old_IFS=$IFS
IFS="£"
function scrivirighe()
{
IFS=",;"
for parl2exp in $parl2
do
parl2exppul=`echo $parl2exp | sed "s/^\s*//" | sed "s/\s*$//"`
echo -e "${parl1}\t${parl2exppul}" >> $CSVFILE
done
IFS="£"
}
echo
echo "Processing ... "
echo -ne "Evaluating line : \r"
while read line
do
if [ "$line" = "" ]; then
# rottura di traduzione
parl1=""
parl2=""
else
pc=`echo "$line" | cut -c1`
if [ $pc = " " ]; then
parl2=`echo $line | sed "s/^\s*//" | sed "s/\s*$//"`
scrivirighe
else
parl1=`echo $line | sed "s/\[.*\]//g" | sed "s/\s*$//"`
fi
fi
let conta=conta+1
let perdone=(conta*100)/totlinee
echo -ne "Evaluating line : $conta \t(${perdone}%) \r"
done < $SOURCE
echo -e "\n Procedure terminated."
---------------------------- 8< cut till here ----------------------------------------------