jQuery in Action, 3rd edition
The moose likes Java in General and the fly likes Convert  Integer to Short Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "Convert  Integer to Short" Watch "Convert  Integer to Short" New topic

Convert Integer to Short

Kumar Naidu

Joined: Jul 27, 2006
Posts: 11
Hi all

i intend to convert a integer (or short or long) that is greater than a byte can hold (eg, 1111) to a byte array, since casting is simply cannot be used here, any other way can do it without lose precise? I have tried to use Integer wrapper class and use its toBinaryString() to convert the int to a string representation, eg 5->"101", then I really cannot find a way of converting "101" to a byte array with correct binary representation. Please help Give Me any Examples
Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24199

The "&" and ">>" operators are your friends.

(i >> 24) & 0xff is the high-order byte of i
(i >> 16) & 0xff is the second byte of i
(i >> 8) & 0xff is the third byte of i
i & 0xff is the last byte of i

If you need to convert a bunch of data, consider using a DataOutputStream and a ByteArrayOutputStream in combination. The DataOutputStream's writeXXX() methods write the binary representation of Java primitive types, which would then be stored into the ByteArrayOutputStream.

[Jess in Action][AskingGoodQuestions]
I agree. Here's the link: http://aspose.com/file-tools
subject: Convert Integer to Short
It's not a secret anymore!