String- chr(13) et chr(10)- retour chariot et ligne feed! [Résolu]

UltimataL 18 Messages postés lundi 3 septembre 2007Date d'inscription 16 novembre 2009 Dernière intervention - 4 oct. 2009 à 14:25 - Dernière réponse : UltimataL 18 Messages postés lundi 3 septembre 2007Date d'inscription 16 novembre 2009 Dernière intervention
- 4 oct. 2009 à 16:02
Bonjour,

Lors de la communication avec un appareil, je reçois un certains nombres de caractères qui sont séparés par le "chr(10)" qui est donc à la ligne.
Petit exemple:
Slot1,V15
Slot2,Va
Ces infos m' indiquent que le slot1 se trouve à un volume de 10 en Hexa, le slot2 à a etc...!
Lors de ma conversion en décimale mon programme bugg lorsque je traite "a" car il n' y a qu' une string!
exemple:
Str = data.substring(8,2) et la je converti ces deux strings en décimale!

Question: Les "chr(13)" et "chr(10)" peuvent ils être traités comme des caractères?
Y a t il une possibilité de demander le nombre de strings après Slot1,ou entre Slot1 et Slot2 ???
Merci à vous
Ultimatal
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 4 oct. 2009 à 15:30
3
Merci
ce n'est pas une string ou 2, c'est une string composée de plusieurs lignes (séparées apparemment par chr(10)?)
ensuite après la virgule, 1 ou 2 char

tu splittes sur chr(10) => tu as un tableau
tu récupères la droite de la virgule (en boucle sur les lignes)
si len = 1, tu précèdes d'un 0
string (tampon) = "&H" & cette chaine
decimal = conversion long du tampon

Merci PCPT 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de PCPT
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 4 oct. 2009 à 14:39
0
Merci
salut,

a = 10 OK
mais 15 vaut 21

tu mélanges 2 choses je crois :

Slot1,V15
Ces infos m' indiquent que le slot1 se trouve à un volume de 10 en Hexa


ok donc 15 décimal vaut 10 hexa ? non plus!
15 décimal = &HF
10 decimal = &HA
a décimal => erreur

Slot2,Va
le slot2 (...) se trouve à un volume de a


15 hexa = 21 decimal
10 hexa = 16 decimal
a hexa = 10 decimal


peux-tu reformuler, ta question hex2dec ou l'inverse ne correspond pas avec les valeurs que tu donnes en exemple

et je ne vois pas non plus le rapport avec les retours chariot, à ce niveau il te suffit de splitter ta chaine pour travailler sur chaque "ligne"

++
[hr]
Commenter la réponse de PCPT
UltimataL 18 Messages postés lundi 3 septembre 2007Date d'inscription 16 novembre 2009 Dernière intervention - 4 oct. 2009 à 15:06
0
Merci
Bonjour et merci pour ton intérêt!

lien utile: home2.paulschou.net/tools/xlate/


Le problème est que je me retrouve avec soit une string ou deux string(en Hexa).
Je ne sais pas comment faire pour différencier cela lors de ma conversion!
Comment faire pour splitter chaque lignes?,est-ce que le retour ligne correspond à un caractère?

Slot1,15
Slot2,18
Slot3,a
Slot4,40

Lors de ma conversion j' indique juste que je prends les strings "15" de la première ligne,
Je ne sais pas comment faire pour traiter chaque lignes et différencier si il y à deux caractères à traiter ou que un!

Par exemple, splitter chaque ligne et définir le nombre de caractères serait une bonne solution!!!???,
Merci
Ultimatal
Commenter la réponse de UltimataL
UltimataL 18 Messages postés lundi 3 septembre 2007Date d'inscription 16 novembre 2009 Dernière intervention - 4 oct. 2009 à 16:01
0
Merci
C' est cela!!!!!

Ultimatal

PS: que c' est bon de recevoir une réponse!
Commenter la réponse de UltimataL
UltimataL 18 Messages postés lundi 3 septembre 2007Date d'inscription 16 novembre 2009 Dernière intervention - 4 oct. 2009 à 16:02
0
Merci
Merci!
Commenter la réponse de UltimataL

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.