Package pixy.io
Class EndianAwareInputStream
java.lang.Object
java.io.InputStream
pixy.io.EndianAwareInputStream
- All Implemented Interfaces:
java.io.Closeable,java.io.DataInput,java.lang.AutoCloseable
public class EndianAwareInputStream
extends java.io.InputStream
implements java.io.DataInput
Endian-aware InputStream backed up by ReadStrategy
- Version:
- 1.0 02/03/2014
- Author:
- Wen Yu, yuwen_66@yahoo.com
-
Constructor Summary
Constructors Constructor Description EndianAwareInputStream(java.io.InputStream is) -
Method Summary
Modifier and Type Method Description voidclose()intread()booleanreadBoolean()bytereadByte()charreadChar()doublereadDouble()floatreadFloat()voidreadFully(byte[] b)voidreadFully(byte[] b, int off, int len)intreadInt()java.lang.StringreadLine()Deprecated.longreadLong()floatreadS15Fixed16Number()shortreadShort()floatreadU16Fixed16Number()floatreadU8Fixed8Number()intreadUnsignedByte()longreadUnsignedInt()intreadUnsignedShort()java.lang.StringreadUTF()Due to the current implementation, writeUTF and readUTF are the only methods which are machine or byte sequence independent as they are actually both Motorola byte sequence under the hood.voidsetReadStrategy(ReadStrategy strategy)intskipBytes(int n)
-
Constructor Details
-
EndianAwareInputStream
public EndianAwareInputStream(java.io.InputStream is)
-
-
Method Details
-
read
public int read() throws java.io.IOException- Specified by:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
readBoolean
public boolean readBoolean() throws java.io.IOException- Specified by:
readBooleanin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readByte
public byte readByte() throws java.io.IOException- Specified by:
readBytein interfacejava.io.DataInput- Throws:
java.io.IOException
-
readChar
public char readChar() throws java.io.IOException- Specified by:
readCharin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readDouble
public double readDouble() throws java.io.IOException- Specified by:
readDoublein interfacejava.io.DataInput- Throws:
java.io.IOException
-
readFloat
public float readFloat() throws java.io.IOException- Specified by:
readFloatin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readFully
public void readFully(byte[] b) throws java.io.IOException- Specified by:
readFullyin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readFully
public void readFully(byte[] b, int off, int len) throws java.io.IOException- Specified by:
readFullyin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readInt
public int readInt() throws java.io.IOException- Specified by:
readIntin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readLine
@Deprecated public java.lang.String readLine() throws java.io.IOExceptionDeprecated.- Specified by:
readLinein interfacejava.io.DataInput- Throws:
java.io.IOException
-
readLong
public long readLong() throws java.io.IOException- Specified by:
readLongin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readS15Fixed16Number
public float readS15Fixed16Number() throws java.io.IOException- Throws:
java.io.IOException
-
readShort
public short readShort() throws java.io.IOException- Specified by:
readShortin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readU16Fixed16Number
public float readU16Fixed16Number() throws java.io.IOException- Throws:
java.io.IOException
-
readU8Fixed8Number
public float readU8Fixed8Number() throws java.io.IOException- Throws:
java.io.IOException
-
readUnsignedByte
public int readUnsignedByte() throws java.io.IOException- Specified by:
readUnsignedBytein interfacejava.io.DataInput- Throws:
java.io.IOException
-
readUnsignedInt
public long readUnsignedInt() throws java.io.IOException- Throws:
java.io.IOException
-
readUnsignedShort
public int readUnsignedShort() throws java.io.IOException- Specified by:
readUnsignedShortin interfacejava.io.DataInput- Throws:
java.io.IOException
-
readUTF
public java.lang.String readUTF() throws java.io.IOExceptionDue to the current implementation, writeUTF and readUTF are the only methods which are machine or byte sequence independent as they are actually both Motorola byte sequence under the hood. Whereas the following static method is byte sequence dependent as it calls readUnsignedShort of RandomAccessInputStream.DataInputStream.readUTF(this);- Specified by:
readUTFin interfacejava.io.DataInput- Throws:
java.io.IOException
-
setReadStrategy
-
skipBytes
public int skipBytes(int n) throws java.io.IOException- Specified by:
skipBytesin interfacejava.io.DataInput- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.InputStream- Throws:
java.io.IOException
-