[NumberUtils] Please add number <> byte[] methods
-------------------------------------------------
Key: LANG-341
URL: https://issues.apache.org/jira/browse/LANG-341
Project: Commons Lang
Issue Type: New Feature
Reporter: Lilianne E. Blaze
Hello,
I need a set of methods to convert Long to or from a byte[] array, as if
writing / reading from Data(Input/Output)Stream(
ByteArray(Input/Output)Stream ).
First, doing it with Streams seems a bit wasteful, second, it seems a
pretty general use. Would it be possible to add something like that to,
for example,
org.apache.commons.lang.math.NumberUtils?
Example code:
static public long toLong(byte[] b)
{
return toLong(b, 0);
}
static public long toLong(byte[] b, int offset)
{
return (((long)b[offset] << 56) +
((long)(b[offset + 1] & 255) << 48) +
((long)(b[offset + 2] & 255) << 40) +
((long)(b[offset + 3] & 255) << 32) +
((long)(b[offset + 4] & 255) << 24) +
((b[offset + 5] & 255) << 16) +
((b[offset + 6] & 255) << 8) +
((b[offset + 7] & 255) << 0));
}
static public byte[] longToByteArray(long l)
{
byte b[] = new byte[8];
longToByteArray(l, b, 0);
return b;
}
static public void longToByteArray(long l, byte b[], int offset)
{
b[offset] = (byte)(l >>> 56);
b[offset + 1] = (byte)(l >>> 48);
b[offset + 2] = (byte)(l >>> 40);
b[offset + 3] = (byte)(l >>> 32);
b[offset + 4] = (byte)(l >>> 24);
b[offset + 5] = (byte)(l >>> 16);
b[offset + 6] = (byte)(l >>> 8);
b[offset + 7] = (byte)(l >>> 0);
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]