J'ai besoin de lire un tableau d'octets de 16 bits comme un nombre abrégé non signé et Java ne prend pas en charge le type abrégé non signé.
Alors, comment puis-je le faire ?? S'il vous plaît aider !! p>
3 Réponses :
Je ne sais pas si vous devez utiliser un abrégé non signé, mais au cas où vous ne le feriez pas, vous pouvez toujours utiliser un caractère pour tenir un abrégé non signé. Jetez un coup d'œil à cet article qui donne une vue d'ensemble p>
En supposant que vous l'avez disponible en tant que données binaires d'une source non-Java que vous devez lire et travailler avec les valeurs de Java:
Lisez-le sous la forme d'un (signé) Vous ne pouvez pas représenter toutes les valeurs d'un non signé court en bref, mais dans un int, vous pouvez. p> p> court code>, puis convertissez-le en int code> comme suit:
Vous pouvez regarder p>
org.apache.commons.IO.AndianutilS.ReadweadswawafiSignedshort P>
Un tableau d'octets de 16 bits? C'est donc un tableau de longueur 2?
Je pense que vous voulez dire convertir, pas lu, non? Donc, convertir deux octets en une seule valeur entière? L'astuce est que vous devrez le stocker comme un
int code>, pas uncourt code>.Le type code> DataType est essentiellement un
non signé code>. Mais la technique la plus courante consiste à utiliser unint code>.@GlowCoder: Shorts sont deux caractères
Les shorts @mkb sont 2 octets, les caractères sont deux octets. Lisez-y dessus à télécharger.oracle.com/javase/tatuly/java / Nutsandbolts / ...
Hein, bonne chose que je ne fais pas Java pour gagner sa vie :)