Here you can find the source of intToNetworkByteOrder(int num, int count)
Parameter | Description |
---|---|
num | the int to convert to a byte array |
count | the number of reserved bytes for the write operation |
public static byte[] intToNetworkByteOrder(int num, int count)
//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; } } }