Java ReadableByteChannel Read readBuffer(ReadableByteChannel chan, ByteBuffer buf)

Here you can find the source of readBuffer(ReadableByteChannel chan, ByteBuffer buf)

Description

Read a buffer completely from a channel.

License

Open Source License

Parameter

Parameter Description
chan The channel.
buf The buffer.

Exception

Parameter Description

Declaration

public static void readBuffer(ReadableByteChannel chan, ByteBuffer buf) throws IOException 

Method Source Code


//package com.java2s;
/*/*from   w w w .j  a va 2  s. c om*/
 * LensKit, an open source recommender systems toolkit.
 * Copyright 2010-2014 LensKit Contributors.  See CONTRIBUTORS.md.
 * Work on LensKit has been funded by the National Science Foundation under
 * grants IIS 05-34939, 08-08692, 08-12148, and 10-17697.
 *
 * This program 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 program 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
 * this program; if not, write to the Free Software Foundation, Inc., 51
 * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.channels.ReadableByteChannel;

public class Main {
    /**
     * Read a buffer completely from a channel.
     * @param chan The channel.
     * @param buf The buffer.
     * @throws java.io.IOException If an error occurs while read the buffer.
     */
    public static void readBuffer(ReadableByteChannel chan, ByteBuffer buf) throws IOException {
        while (buf.hasRemaining()) {
            chan.read(buf);
        }
    }

    /**
     * Read a buffer completely from a position in a file.
     * @param chan The channel.
     * @param buf The buffer.
     * @param pos The position from which to read.
     * @throws java.io.IOException If an error occurs while read the buffer.
     */
    public static void readBuffer(FileChannel chan, ByteBuffer buf, long pos) throws IOException {
        long cpos = pos;
        while (buf.hasRemaining()) {
            cpos += chan.read(buf, cpos);
        }
    }
}

Related

  1. read(ReadableByteChannel channel, ByteBuffer[] dsts, int offset, int length)
  2. read(ReadableByteChannel channel, int amount, ByteBuffer dest)
  3. readAll(ReadableByteChannel ch, ByteBuffer dst)
  4. readAllBytesOrNone(ReadableByteChannel channel, ByteBuffer buffer, int numBytes)
  5. readAnerisHeader(ReadableByteChannel from, ByteBuffer buffer)
  6. readCharArray(ReadableByteChannel channel, ByteBuffer buffer, char[] charArray)
  7. readFromAnerisChannel(ReadableByteChannel chan, ByteBuffer buffer)
  8. readFromChannel(ReadableByteChannel channel, ByteBuffer buffer)
  9. readFull(ReadableByteChannel ch, ByteBuffer dst)