Bonjour
Je cherche à saisir un texte dans un tmemo et a chaque saisie d'un caractère je cherche à calculer le nombre de caractère, c'est pour une application d'envoyé de sms
Si quelqu'un a une idée
Cordialement
Sébastien
Bonjour
Je cherche à saisir un texte dans un tmemo et a chaque saisie d'un caractère je cherche à calculer le nombre de caractère, c'est pour une application d'envoyé de sms
Si quelqu'un a une idée
Cordialement
Sébastien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Length(Memo1.Text);
Merci je cherchais midi a 14h :-(Envoyé par Pedro204
Problème pas vraiment résolu car la fonction lenght(Memo1.Text) renvoi 2 si un caractère accentué (par exemple é ) a été tapé au lieu de 1 !
Comment faire pour obtenir vraiment le nombre de caractères saisies dans un Tmemo ?
Si vous avez la solution, je suis preneur...
Merci d'avance
Bonjour,
il n'est jamais très bon de déterrer une discussion, surtout de plus de 10 ans.
Pour répondre quand même à l'attente ce n'est qu'une question d'encodage (et de la version de Delphi ?)
donnera une bonne réponse pour 'é'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Length(AnsiStr(Memo1.Text))
Cependant le terme "nombre de caractères" ne me plait pas des masses, doit-on considérer les x0A x0D (des sauts de lignes), les espaces comme des caractères ? AMHA il serait plus juste d'utiliser le terme "nombre d'octets"
ceci étant, je ne connais absolument le monde SMS, il faut nécessairement que cela soit du ANSI , depuis le temps ce n'est toujours pas passé à l'UTF8
Oui l'UTF8 est possible, cela dépend du texte et l'appareil choisit lui-même le codage.
Un SMS, c'est maximum 1120 bits. En ASCII (7 bits), cela permet 160 caractères. Dès qu'un caractère ANSI étendu est trouvé, la taille est réduite à 140 (1120 /8 bits). L'UTF8 est possible mais puisque la taille du buffer est invariable, ce n'est plus que 70 caractères (1120 /16).
Bref, un message bien écrit (en bon français) peut coûter plus cher puisqu'un texte avec accents (et éventuellement ligatures) de 160 caractères sera envoyé en deux, voire trois fois (plusieurs SMS facturés).
Dès lors, écrire "oeil" (ASCII) ou "œil" (UTF8) prend une dimension différente.
Le SMS est le seul cas où je ne demande pas à mes enfants de faire un effort et mon porte-monnaie leurs dit merci
Quelle idée d'habiter aux Bahamas aussi ....
Le soleil toute l'année, ça se paye
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager