Reads an 16 bit array length followed by the actual array data. - Java File Path IO

Java examples for File Path IO:Byte Array

Description

Reads an 16 bit array length followed by the actual array data.

Demo Code


import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.util.Iterator;
import org.apache.log4j.Logger;

public class Main{
    /**/*from  w  w w .  ja  v  a 2  s.  c om*/
     * Reads an 16 bit array length followed by the actual array data.
     * 
     * @param buf
     * @return the array read
     */
    final static public byte[] readArray16(ByteBuffer buf) {
        int length = getUnsignedShort(buf);
        byte[] array = new byte[length];
        buf.get(array);
        return array;
    }
    /**
     * Returns 16 unsigned bits as an integer. Big endian.
     * 
     * @param buf
     * @return
     */
    final public static int getUnsignedShort(ByteBuffer buf) {
        return buf.getShort() & 0xffff;
    }
}

Related Tutorials