Java ByteBuffer Write writeBuffer(ByteChannel channel, ByteBuffer buffer)

Here you can find the source of writeBuffer(ByteChannel channel, ByteBuffer buffer)

Description

writing to channel buffer

License

Open Source License

Parameter

Parameter Description
channel byte channel
buffer buffer

Exception

Parameter Description
IOException exception

Return

written bytes

Declaration

public static int writeBuffer(ByteChannel channel, ByteBuffer buffer) throws IOException 

Method Source Code


//package com.java2s;
/*//from   w w w  .j a v a 2s.c o  m
 * Copyright (c) 2014, 2017, Marcus Hirt, Miroslav Wengner
 *
 * Robo4J is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * Robo4J 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with Robo4J. If not, see <http://www.gnu.org/licenses/>.
 */

import java.io.IOException;

import java.nio.ByteBuffer;
import java.nio.channels.ByteChannel;

public class Main {
    /**
     * writing to channel buffer
     *
     * @param channel
     *            byte channel
     * @param buffer
     *            buffer
     * @return written bytes
     * @throws IOException
     *             exception
     */
    public static int writeBuffer(ByteChannel channel, ByteBuffer buffer) throws IOException {
        int numberWritten = 0;
        int totalWritten = numberWritten;

        while (numberWritten >= 0 && buffer.hasRemaining()) {
            numberWritten = channel.write(buffer);
            totalWritten += numberWritten;
        }
        return totalWritten;
    }
}

Related

  1. writeBER32(ByteBuffer buffer, int value)
  2. writeBigInteger(ByteBuffer bb, BigInteger bigInteger, int length)
  3. writeBlock(String fileName, long startOffset, ByteBuffer buffer, Logger log)
  4. writeBooleanArray(boolean[] array, ByteBuffer out)
  5. writeBuffer(ByteBuffer dest, ByteBuffer src)
  6. writeBuffer(FileChannel fc, ByteBuffer buf, int startPos)
  7. writeBuffer(WritableByteChannel chan, ByteBuffer buf)
  8. writeByte(ByteBuffer dest, int off, int i)
  9. writeByteArray(byte[] array, ByteBuffer out)