|
||
| [IT] Java - Troncamento testo ad un certo numero di caratteri massimo, senza rompere le parole | ||
|
Java - Troncamento testo ad un certo numero di caratteri massimo, senza rompere le parole Magari questa funzione potrebbe essere ottimizzata, ma non mi interessa farlo e non ne ho voglia. Cosi' funziona, usate il codice come volete. Esempio: "La vispa Teresa girava per strada fumando l'impossibile"Questa frase, troncata alla 12ma lettera, dovrebbe diventare "La vispa"per effetto del troncamento alla parola precedente (non si vogliono parole spezzate).
/**
* Tronca il testo passato ad una lunghezza inferiore o uguale a "limite".<br>
* La lunghezza risulta inferiore nel caso il valore "limite" non coincida
* con la fine di una parola. <b>Il testo viene troncato sempre in coincidenza
* della fine di una parola</b>.<br>
* Attenzione! Elimina gli spazi iniziali e finali (trim).
* @param testo e' il testo da troncare
* @param limite e' il numero di caratteri da tenere (al massimo)
* @return Il testo troncato nel caso normale; la stringa vuota se limite=0;
* la stringa depurata dagli spazi iniziali e finali se limite<0 oppure
* il limite e' maggiore della lunghezza della stringa.
*/
public String TroncaAllaParolaPrecedente(String testo, int limite)
{
String temp = testo;
if (limite==0) temp = "";
if (limite>0)
{
if (temp.length()>limite)
{
char frontiera = temp.charAt(limite);
temp = temp.substring(0,limite);
if (frontiera!=' ')
{
int nuovo_limite = temp.lastIndexOf(" ");
if (nuovo_limite>=0) temp = temp.substring(0,nuovo_limite);
else temp = "";
}
}
}
return temp.trim();
}
|
||
(c) 1999-2006
|