Java ByteBuffer to Byte Array getBytes(ByteBuffer bytes)

Here you can find the source of getBytes(ByteBuffer bytes)

Description

Extract the bytes in the given ByteBuffer and return it as a byte[].

License

Apache License

Parameter

Parameter Description
bytes ByteBuffer.

Return

Contents between 'position' and 'limit' (aka 'remaining') as a byte[].

Declaration

public static byte[] getBytes(ByteBuffer bytes) 

Method Source Code

//package com.java2s;
/*/*w  w  w  .  j a  v a2 s .  c  o m*/
 * Copyright (C) 2014 Dell, Inc.
 * 
 * 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.
 */

import java.nio.ByteBuffer;

public class Main {
    /**
     * Extract the bytes in the given ByteBuffer and return it as a byte[]. CAUTION: this
     * method calls ByteBuffer.get(), which <i>transfers</i> bytes from the ByteBuffer to
     * the result buffer. Hence, it is "destructive" in the sense that the value cannot be
     * examined again without calling ByteBuffer.rewind() or something else. 
     *
     * @param   bytes   ByteBuffer.
     * @return          Contents between 'position' and 'limit' (aka 'remaining') as a
     *                  byte[].
     * @see     #copyBytes(ByteBuffer)
     */
    public static byte[] getBytes(ByteBuffer bytes) {
        byte[] result = new byte[bytes.remaining()]; // bytes between position and limit
        bytes.get(result);
        return result;
    }
}

Related

  1. getBytes(ByteBuffer buf)
  2. getBytes(ByteBuffer buf, byte[] arr)
  3. getBytes(ByteBuffer buf, int length)
  4. getBytes(ByteBuffer buffer, int len)
  5. getBytes(ByteBuffer byteBuffer, int length)
  6. getBytes(ByteBuffer floatCalculator, float number)
  7. getBytes(ByteBuffer in)
  8. getBytes(MappedByteBuffer buffer, int pos, byte[] target)
  9. getBytesAtOffset(ByteBuffer buffer, int offset, int length)