Little/big Endian

Signaler
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
-
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
-
Bonjour,

Je suis en NET 1.1

Je veux paramétrer, avec mon soft, un équipement Ethernet.
J'utilise la classe BinaryWriter pour créer le buffer d'envoi de ma trame UDP.

Je fais donc des BinaryWriter.Write de tout type : Int16, Int32, byte[] ...

En espoinnant avec Ethereal j'ai remarqué que mes Int16 étaient inversés par rapport à ce qu'envoie l'outil propriétaire.

Je suppose que c'est une histoire de little/big Endian.

Ma parade est, pour le moment, d'inverser les octets à la source. Bouuuuu, c'est pas beau !!!!!
Y a-t-il un moyen beaucoup plus propre ?

Merci

PS : le début de mon code :
MemoryStream ms = new MemoryStream(27);
BinaryWriter bw = new BinaryWriter(ms, System.Text.Encoding.ASCII);

1 réponse

Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
l'inversion ne se fait qu'au moment du transit réseau non? pourquoi chercher a controler une opération qui ne te concerne pas (si cest bien le cas)?