java.io
Class DataOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by java.io.FilterOutputStream
          extended by java.io.DataOutputStream
All Implemented Interfaces:
DataOutput

public class DataOutputStream
extends FilterOutputStream
implements DataOutput

Transmits java data types as bytes over an OutputStream.

Author:
Brian Bagnall, Sven Köhler

Field Summary
protected  int written
           
 
Fields inherited from class java.io.FilterOutputStream
out
 
Constructor Summary
DataOutputStream(OutputStream out)
           
 
Method Summary
 int size()
          Returns the current value of the counter written, the number of bytes written to this data output stream so far.
 void write(byte[] b, int off, int len)
          Writes len bytes from the specified byte array starting at offset off to this output stream.
 void write(int b)
          Writes the specified byte to this output stream.
 void writeBoolean(boolean v)
          Writes a boolean to the underlying output stream as a 1-byte value.
 void writeByte(int v)
          Writes out a byte to the underlying output stream as a 1-byte value.
 void writeBytes(String s)
           
 void writeChar(int v)
          Writes a char to the underlying output stream as a 2-byte value, high byte first.
 void writeChars(String s)
           
 void writeDouble(double v)
          Converts the double argument to a long using the doubleToLongBits method in class Double, and then writes that long value to the underlying output stream as an 8-byte quantity, high byte first.
 void writeFloat(float v)
          Converts the float argument to an int using the floatToIntBits method in class Float, and then writes that int value to the underlying output stream as a 4-byte quantity, high byte first.
 void writeInt(int v)
          Writes an int to the underlying output stream as four bytes, high byte first.
 void writeLong(long v)
          Writes a long to the underlying output stream as eight bytes, high byte first.
 void writeShort(int v)
          Writes a short to the underlying output stream as two bytes, high byte first.
 void writeUTF(String s)
           
 
Methods inherited from class java.io.FilterOutputStream
close, flush
 
Methods inherited from class java.io.OutputStream
write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

written

protected int written
Constructor Detail

DataOutputStream

public DataOutputStream(OutputStream out)
Method Detail

size

public final int size()
Returns the current value of the counter written, the number of bytes written to this data output stream so far. If the counter overflows, it will be wrapped to Integer.MAX_VALUE.

Returns:
the value of the written field.
See Also:
written

write

public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
Description copied from class: OutputStream
Writes len bytes from the specified byte array starting at offset off to this output stream. The general contract for write(b, off, len) is that some of the bytes in the array b are written to the output stream in order; element b[off] is the first byte written and b[off+len-1] is the last byte written by this operation.

The write method of OutputStream calls the write method of one argument on each of the bytes to be written out. Subclasses are encouraged to override this method and provide a more efficient implementation.

If b is null, a NullPointerException is thrown.

If off is negative, or len is negative, or off+len is greater than the length of the array b, then an IndexOutOfBoundsException is thrown.

Specified by:
write in interface DataOutput
Overrides:
write in class FilterOutputStream
Parameters:
b - the data.
off - the start offset in the data.
len - the number of bytes to write.
Throws:
IOException - if an I/O error occurs. In particular, an IOException is thrown if the output stream is closed.
See Also:
FilterOutputStream.out

write

public void write(int b)
           throws IOException
Description copied from class: OutputStream
Writes the specified byte to this output stream. The general contract for write is that one byte is written to the output stream. The byte to be written is the eight low-order bits of the argument b. The 24 high-order bits of b are ignored.

Subclasses of OutputStream must provide an implementation for this method.

Specified by:
write in interface DataOutput
Overrides:
write in class FilterOutputStream
Parameters:
b - the byte.
Throws:
IOException - if an I/O error occurs. In particular, an IOException may be thrown if the output stream has been closed.
See Also:
FilterOutputStream.out

writeBoolean

public final void writeBoolean(boolean v)
                        throws IOException
Description copied from interface: DataOutput
Writes a boolean to the underlying output stream as a 1-byte value. The value true is written out as the value (byte)1; the value false is written out as the value (byte)0. If no exception is thrown, the counter written is incremented by 1.

Specified by:
writeBoolean in interface DataOutput
Parameters:
v - a boolean value to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeByte

public final void writeByte(int v)
                     throws IOException
Description copied from interface: DataOutput
Writes out a byte to the underlying output stream as a 1-byte value. If no exception is thrown, the counter written is incremented by 1.

Specified by:
writeByte in interface DataOutput
Parameters:
v - a byte value to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeBytes

public final void writeBytes(String s)
                      throws IOException
Specified by:
writeBytes in interface DataOutput
Throws:
IOException

writeChar

public final void writeChar(int v)
                     throws IOException
Description copied from interface: DataOutput
Writes a char to the underlying output stream as a 2-byte value, high byte first. If no exception is thrown, the counter written is incremented by 2.

Specified by:
writeChar in interface DataOutput
Parameters:
v - a char value to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeChars

public final void writeChars(String s)
                      throws IOException
Specified by:
writeChars in interface DataOutput
Throws:
IOException

writeDouble

public final void writeDouble(double v)
                       throws IOException
Description copied from interface: DataOutput
Converts the double argument to a long using the doubleToLongBits method in class Double, and then writes that long value to the underlying output stream as an 8-byte quantity, high byte first. If no exception is thrown, the counter written is incremented by 8.

Specified by:
writeDouble in interface DataOutput
Parameters:
v - a double value to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out, Double.doubleToLongBits(double)

writeFloat

public final void writeFloat(float v)
                      throws IOException
Description copied from interface: DataOutput
Converts the float argument to an int using the floatToIntBits method in class Float, and then writes that int value to the underlying output stream as a 4-byte quantity, high byte first. If no exception is thrown, the counter written is incremented by 4.

Specified by:
writeFloat in interface DataOutput
Parameters:
v - a float value to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out, Float.floatToIntBits(float)

writeInt

public final void writeInt(int v)
                    throws IOException
Description copied from interface: DataOutput
Writes an int to the underlying output stream as four bytes, high byte first. If no exception is thrown, the counter written is incremented by 4.

Specified by:
writeInt in interface DataOutput
Parameters:
v - an int to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeLong

public final void writeLong(long v)
                     throws IOException
Description copied from interface: DataOutput
Writes a long to the underlying output stream as eight bytes, high byte first. In no exception is thrown, the counter written is incremented by 8.

Specified by:
writeLong in interface DataOutput
Parameters:
v - a long to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeShort

public final void writeShort(int v)
                      throws IOException
Description copied from interface: DataOutput
Writes a short to the underlying output stream as two bytes, high byte first. If no exception is thrown, the counter written is incremented by 2.

Specified by:
writeShort in interface DataOutput
Parameters:
v - a short to be written.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.out

writeUTF

public final void writeUTF(String s)
                    throws IOException
Specified by:
writeUTF in interface DataOutput
Throws:
IOException