Java Integer to intToNetworkByteOrder(int num, int count)

Here you can find the source of intToNetworkByteOrder(int num, int count)

Description

Encodes an integer into up to 4 bytes in network byte order.

License

Open Source License

Parameter

Parameter Description
num the int to convert to a byte array
count the number of reserved bytes for the write operation

Return

the resulting byte array

Declaration

public static byte[] intToNetworkByteOrder(int num, int count) 

Method Source Code

//package com.java2s;
/**/*from   w w w .j  a  va  2s.  c om*/
 * Copyright 2007-2016, Kaazing Corporation. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

public class Main {
    /**
     * Encodes an integer into up to 4 bytes in network byte order.
     * 
     * @param num the int to convert to a byte array
     * @param count the number of reserved bytes for the write operation
     * @return the resulting byte array
     */
    public static byte[] intToNetworkByteOrder(int num, int count) {
        byte[] buf = new byte[count];
        intToNetworkByteOrder(num, buf, 0, count);

        return buf;
    }

    /**
     * Encodes an integer into up to 4 bytes in network byte order in the 
     * supplied buffer starting at <code>start</code> offset and writing
     * <code>count</code> bytes.
     * 
     * @param num the int to convert to a byte array
     * @param buf the buffer to write the bytes to
     * @param start the offset from beginning for the write operation
     * @param count the number of reserved bytes for the write operation
     */
    public static void intToNetworkByteOrder(int num, byte[] buf,
            int start, int count) {
        if (count > 4) {
            throw new IllegalArgumentException(
                    "Cannot handle more than 4 bytes");
        }

        for (int i = count - 1; i >= 0; i--) {
            buf[start + i] = (byte) (num & 0xff);
            num >>>= 8;
        }
    }
}

Related

  1. intToLittleEndian(int val)
  2. intToLittleEndian(int value)
  3. intToMCInts(int i)
  4. intToMmss(int ns)
  5. intToNetworkByteOrder(int num, byte[] buf, int start, int count)
  6. intToNumericFormat(int src)
  7. intToOctal(int value)
  8. IntToOctString(final int value)
  9. intToOneByte(int i)