Java ByteBuffer Clear clearRemaining(ByteBuffer buffer)

Here you can find the source of clearRemaining(ByteBuffer buffer)

Description

Sets all bits in the given remaining byte range to 0.

License

Open Source License

Declaration

public static void clearRemaining(ByteBuffer buffer) 

Method Source Code

//package com.java2s;
/*//from w w w  .  jav  a2  s.  com
Copyright (c) 2005 Health Market Science, Inc.
    
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
    
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
    
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
USA
    
You can contact Health Market Science at info@healthmarketscience.com
or at the following address:
    
Health Market Science
2700 Horizon Drive
Suite 200
King of Prussia, PA 19406
*/

import java.nio.ByteBuffer;

public class Main {
    /**
     * Sets all bits in the given remaining byte range to 0.
     */
    public static void clearRemaining(ByteBuffer buffer) {
        if (!buffer.hasRemaining()) {
            return;
        }
        int pos = buffer.position();
        clearRange(buffer, pos, pos + buffer.remaining());
    }

    /**
     * Sets all bits in the given byte range to 0.
     */
    public static void clearRange(ByteBuffer buffer, int start, int end) {
        putRange(buffer, start, end, (byte) 0x00);
    }

    /**
     * Sets all bytes in the given byte range to the given byte value.
     */
    public static void putRange(ByteBuffer buffer, int start, int end, byte b) {
        for (int i = start; i < end; ++i) {
            buffer.put(i, b);
        }
    }
}

Related

  1. clear(ByteBuffer buffer)
  2. clear(ByteBuffer buffer, int position, int length, byte filler)
  3. clear(ByteBuffer[] buffers)
  4. clearAll(ByteBuffer[] buffers)
  5. clearAndEnsureCapacity(ByteBuffer buffer, int elements)
  6. clearRemainingFrame(ByteBuffer buffer, int position)
  7. clearString(ByteBuffer buffer)
  8. fillBuffer(ReadableByteChannel channel, ByteBuffer buf, boolean clear)
  9. free(ByteBuffer buffer)