Java Long Number Array Convert longArrayToBytes(long[] d)

Here you can find the source of longArrayToBytes(long[] d)

Description

long Array To Bytes

License

Open Source License

Declaration

public static byte[] longArrayToBytes(long[] d) 

Method Source Code

//package com.java2s;
/*******************************************************************************
 * Copyright (c) 2013 Oak Ridge National Laboratory.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 ******************************************************************************/

public class Main {
    public static byte[] longArrayToBytes(long[] d) {
        byte[] r = new byte[d.length * 8];
        for (int i = 0; i < d.length; i++) {
            byte[] s = longToBytes(d[i]);
            for (int j = 0; j < 8; j++)
                r[8 * i + j] = s[j];//  w  w  w  .  j a  va 2 s . c o m
        }
        return r;
    }

    /**
     * Javascript doesn't support long data type, so it has to be converted to double before
     * converting it to byte[].
     */
    public static byte[] longToBytes(long v) {
        return doubleToBytes((double) v);
    }

    public static byte[] doubleToBytes(double d) {
        long l = Double.doubleToRawLongBits(d);
        byte[] r = new byte[8];
        for (int i = 0; i < 8; i++) {
            r[i] = (byte) ((l >>> (i * 8)) & 0xFF);
        }
        return r;
    }
}

Related

  1. longArray2Json(long[] array)
  2. longArrayToIntArray(long[] longs)