DataOutputStream

public class DataOutputStream
extends FilterOutputStream implements DataOutput

java.lang.Object
   ↳ java.io.OutputStream
     ↳ java.io.FilterOutputStream
       ↳ java.io.DataOutputStream


A data output stream lets an application write primitive Java data types to an output stream in a portable way. An application can then use a data input stream to read the data back in.

See also:

Summary

Fields

protected int written

The number of bytes written to the data output stream so far.

Inherited fields

protected OutputStream out

The underlying output stream to be filtered.

Public constructors

DataOutputStream(OutputStream out)

Creates a new data output stream to write data to the specified underlying output stream.

Public methods

void flush()

Flushes this data output stream.

final 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 the underlying output stream.

void write(int b)

Writes the specified byte (the low eight bits of the argument b) to the underlying output stream.

final void writeBoolean(boolean v)

Writes a boolean to the underlying output stream as a 1-byte value.

final void writeByte(int v)

Writes out a byte to the underlying output stream as a 1-byte value.

final void writeBytes(String s)

Writes out the string to the underlying output stream as a sequence of bytes.

final void writeChar(int v)

Writes a char to the underlying output stream as a 2-byte value, high byte first.

final void writeChars(String s)

Writes a string to the underlying output stream as a sequence of characters.

final 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.

final 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.

final void writeInt(int v)

Writes an int to the underlying output stream as four bytes, high byte first.

final void writeLong(long v)

Writes a long to the underlying output stream as eight bytes, high byte first.

final void writeShort(int v)

Writes a short to the underlying output stream as two bytes, high byte first.

final void writeUTF(String str)

Writes a string to the underlying output stream using modified UTF-8 encoding in a machine-independent manner.

Inherited methods

void close()

Closes this output stream and releases any system resources associated with the stream.

void flush()

Flushes this output stream and forces any buffered output bytes to be written out to the stream.

void write(byte[] b)

Writes b.length bytes to this output stream.

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 close()

Closes this output stream and releases any system resources associated with this stream.

void flush()

Flushes this output stream and forces any buffered output bytes to be written out.

static OutputStream nullOutputStream()

Returns a new OutputStream which discards all bytes.

void write(byte[] b)

Writes b.length bytes from the specified byte array to this output stream.

void write(byte[] b, int off, int len)

Writes len bytes from the specified byte array starting at offset off to this output stream.

abstract void write(int b)

Writes the specified byte to this output stream.

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

abstract void close()

Closes this stream and releases any system resources associated with it.

abstract void flush()

Flushes this stream by writing any buffered output to the underlying stream.

abstract void write(byte[] b)

Writes to the output stream all the bytes in array b.

abstract void write(byte[] b, int off, int len)

Writes len bytes from array b, in order, to the output stream.

abstract void write(int b)

Writes to the output stream the eight low-order bits of the argument b.

abstract void writeBoolean(boolean v)

Writes a boolean value to this output stream.

abstract void writeByte(int v)

Writes to the output stream the eight low- order bits of the argument v.

abstract void writeBytes(String s)

Writes a string to the output stream.

abstract void writeChar(int v)

Writes a char value, which is comprised of two bytes, to the output stream.

abstract void writeChars(String s)

Writes every character in the string s, to the output stream, in order, two bytes per character.

abstract void writeDouble(double v)

Writes a double value, which is comprised of eight bytes, to the output stream.

abstract void writeFloat(float v)

Writes a float value, which is comprised of four bytes, to the output stream.

abstract void writeInt(int v)

Writes an int value, which is comprised of four bytes, to the output stream.

abstract void writeLong(long v)

Writes a long value, which is comprised of eight bytes, to the output stream.

abstract void writeShort(int v)

Writes two bytes to the output stream to represent the value of the argument.

abstract void writeUTF(String s)

Writes two bytes of length information to the output stream, followed by the modified UTF-8 representation of every character in the string s.

abstract void close()

Closes this resource, relinquishing any underlying resources.

Fields

written

Added in API level 1
protected int written

The number of bytes written to the data output stream so far. If this counter overflows, it will be wrapped to Integer.MAX_VALUE.

Public constructors

DataOutputStream

Added in API level 1
public DataOutputStream (OutputStream out)

Creates a new data output stream to write data to the specified underlying output stream. The counter written is set to zero.

Parameters
out OutputStream: the underlying output stream, to be saved for later use.

Public methods

flush

Added in API level 1
public void flush ()

Flushes this data output stream. This forces any buffered output bytes to be written out to the stream.

The flush method of DataOutputStream calls the flush method of its underlying output stream.

Throws
IOException if an I/O error occurs.

size

Added in API level 1
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
int the value of the written field.

See also:

write

Added in API level 1
public void write (byte[] b, 
                int off, 
                int len)

Writes len bytes from the specified byte array starting at offset off to the underlying output stream. If no exception is thrown, the counter written is incremented by len.

Parameters
b byte: the data.

off int: the start offset in the data.

len int: the number of bytes to write.

Throws
IOException if an I/O error occurs.

write

Added in API level 1
public void write (int b)

Writes the specified byte (the low eight bits of the argument b) to the underlying output stream. If no exception is thrown, the counter written is incremented by 1.

Implements the write method of OutputStream.

Parameters
b int: the byte to be written.

Throws
IOException if an I/O error occurs.

writeBoolean

Added in API level 1
public final void writeBoolean (boolean v)

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.

Parameters
v boolean: a boolean value to be written.

Throws
IOException if an I/O error occurs.

writeByte

Added in API level 1
public final void writeByte (int v)

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.

Parameters
v int: a byte value to be written.

Throws
IOException if an I/O error occurs.

writeBytes

Added in API level 1
public final void writeBytes (String s)

Writes out the string to the underlying output stream as a sequence of bytes. Each character in the string is written out, in sequence, by discarding its high eight bits. If no exception is thrown, the counter written is incremented by the length of s.

Parameters
s String: a string of bytes to be written.

Throws
IOException if an I/O error occurs.

writeChar

Added in API level 1
public final void writeChar (int v)

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.

Parameters
v int: a char value to be written.

Throws
IOException if an I/O error occurs.

writeChars

Added in API level 1
public final void writeChars (String s)

Writes a string to the underlying output stream as a sequence of characters. Each character is written to the data output stream as if by the writeChar method. If no exception is thrown, the counter written is incremented by twice the length of s.

Parameters
s String: a String value to be written.

Throws
IOException if an I/O error occurs.

writeDouble

Added in API level 1
public final 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. If no exception is thrown, the counter written is incremented by 8.

Parameters
v double: a double value to be written.

Throws
IOException if an I/O error occurs.

writeFloat

Added in API level 1
public final 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. If no exception is thrown, the counter written is incremented by 4.

Parameters
v float: a float value to be written.

Throws
IOException if an I/O error occurs.

writeInt

Added in API level 1
public final void writeInt (int v)

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.

Parameters
v int: an int to be written.

Throws
IOException if an I/O error occurs.

writeLong

Added in API level 1
public final void writeLong (long v)

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.

Parameters
v long: a long to be written.

Throws
IOException if an I/O error occurs.

writeShort

Added in API level 1
public final void writeShort (int v)

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.

Parameters
v int: a short to be written.

Throws
IOException if an I/O error occurs.

writeUTF

Added in API level 1
public final void writeUTF (String str)

Writes a string to the underlying output stream using modified UTF-8 encoding in a machine-independent manner.

First, two bytes are written to the output stream as if by the writeShort method giving the number of bytes to follow. This value is the number of bytes actually written out, not the length of the string. Following the length, each character of the string is output, in sequence, using the modified UTF-8 encoding for the character. If no exception is thrown, the counter written is incremented by the total number of bytes written to the output stream. This will be at least two plus the length of str, and at most two plus thrice the length of str.

Parameters
str String: a string to be written.

Throws
IOException if an I/O error occurs.