Couper Java Chaîne de caractères à un certain nombre de caractères
Je voudrais couper un Java Chaîne lors de cette Chaîne est de longueur > 50, et d'ajouter "..." à la fin de la chaîne.
Exemple :
J'ai le texte suivant Java String :
String str = "abcdefghijklmnopqrtuvwxyz";
Je voudrais couper la Corde à la longueur = 8 :
Résultat doit être:
String strOut = "abcdefgh..."
- Habituellement, il est plus logique de coupe de sorte que la longueur ne sera pas plus de N avec des points de suspension. La différence étant que, en vous l'exemple 9, 10 ou 11 chaînes de caractères serait réduit alors même qu'ils seraient plus courtes, ou de la même longueur.
Vous devez vous connecter pour publier un commentaire.
Utiliser substring et concaténer:
StringUtils.abbreviate("abcdefg", 6);
Cela vous donnera le résultat suivant:
abc...
Où 6 est la longueur nécessaire, et "abcdefg" est la chaîne qui doit être abbrevieted.
Utiliser substring
Remarque: substring(int premier, int secondes) prend deux paramètres. La première est inclusive et la deuxième est exclusif.
Jakarta Commons StringUtils.abréger(). Si, pour une raison quelconque vous ne voulez pas utiliser de la 3e partie de la bibliothèque, au moins une copie de la le code source.
Un avantage important sur les autres réponses à ce jour est qu'il ne va pas faire si vous passez une valeur null.
Vous pouvez utiliser une sous-chaîne:
Vous pouvez utiliser String#substring()
Vous pouvez toutefois faire une fonction où l'on passe le nombre maximum de caractères qui peuvent être affichés. Les points de suspension serait alors coupé en seulement si la largeur spécifiée n'est pas assez pour la chaîne.
Quelque chose comme cela peut être: