- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.io.DataOutputStream
-
- All Implemented Interfaces:
Closeable,DataOutput,Flushable,AutoCloseable
public class DataOutputStream extends FilterOutputStream implements DataOutput
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.- Since:
- 1.0
- See Also:
DataInputStream
-
-
Field Summary
Fields Modifier and Type Field Description protected intwrittenThe number of bytes written to the data output stream so far.-
Fields declared in class java.io.FilterOutputStream
out
-
-
Constructor Summary
Constructors Constructor Description DataOutputStream(OutputStream out)Creates a new data output stream to write data to the specified underlying output stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidflush()Flushes this data output stream.intsize()Returns the current value of the counterwritten, the number of bytes written to this data output stream so far.voidwrite(byte[] b, int off, int len)Writeslenbytes from the specified byte array starting at offsetoffto the underlying output stream.voidwrite(int b)Writes the specified byte (the low eight bits of the argumentb) to the underlying output stream.voidwriteBoolean(boolean v)Writes abooleanto the underlying output stream as a 1-byte value.voidwriteByte(int v)Writes out abyteto the underlying output stream as a 1-byte value.voidwriteBytes(String s)Writes out the string to the underlying output stream as a sequence of bytes.voidwriteChar(int v)Writes acharto the underlying output stream as a 2-byte value, high byte first.voidwriteChars(String s)Writes a string to the underlying output stream as a sequence of characters.voidwriteDouble(double v)Converts the double argument to alongusing thedoubleToLongBitsmethod in classDouble, and then writes thatlongvalue to the underlying output stream as an 8-byte quantity, high byte first.voidwriteFloat(float v)Converts the float argument to anintusing thefloatToIntBitsmethod in classFloat, and then writes thatintvalue to the underlying output stream as a 4-byte quantity, high byte first.voidwriteInt(int v)Writes anintto the underlying output stream as four bytes, high byte first.voidwriteLong(long v)Writes alongto the underlying output stream as eight bytes, high byte first.voidwriteShort(int v)Writes ashortto the underlying output stream as two bytes, high byte first.voidwriteUTF(String str)Writes a string to the underlying output stream using modified UTF-8 encoding in a machine-independent manner.-
Methods declared in class java.io.FilterOutputStream
close, write
-
Methods declared in class java.io.OutputStream
nullOutputStream
-
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods declared in interface java.io.DataOutput
write
-
-
-
-
Constructor Detail
-
DataOutputStream
public DataOutputStream(OutputStream out)
Creates a new data output stream to write data to the specified underlying output stream. The counterwrittenis set to zero.- Parameters:
out- the underlying output stream, to be saved for later use.- See Also:
FilterOutputStream.out
-
-
Method Detail
-
write
public void write(int b) throws IOExceptionWrites the specified byte (the low eight bits of the argumentb) to the underlying output stream. If no exception is thrown, the counterwrittenis incremented by1.Implements the
writemethod ofOutputStream.- Specified by:
writein interfaceDataOutput- Overrides:
writein classFilterOutputStream- Parameters:
b- thebyteto be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
write
public void write(byte[] b, int off, int len) throws IOExceptionWriteslenbytes from the specified byte array starting at offsetoffto the underlying output stream. If no exception is thrown, the counterwrittenis incremented bylen.- Specified by:
writein interfaceDataOutput- Overrides:
writein classFilterOutputStream- 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.- See Also:
FilterOutputStream.out
-
flush
public void flush() throws IOExceptionFlushes this data output stream. This forces any buffered output bytes to be written out to the stream.The
flushmethod ofDataOutputStreamcalls theflushmethod of its underlying output stream.- Specified by:
flushin interfaceFlushable- Overrides:
flushin classFilterOutputStream- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out,OutputStream.flush()
-
writeBoolean
public final void writeBoolean(boolean v) throws IOExceptionWrites abooleanto the underlying output stream as a 1-byte value. The valuetrueis written out as the value(byte)1; the valuefalseis written out as the value(byte)0. If no exception is thrown, the counterwrittenis incremented by1.- Specified by:
writeBooleanin interfaceDataOutput- Parameters:
v- abooleanvalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeByte
public final void writeByte(int v) throws IOExceptionWrites out abyteto the underlying output stream as a 1-byte value. If no exception is thrown, the counterwrittenis incremented by1.- Specified by:
writeBytein interfaceDataOutput- Parameters:
v- abytevalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeShort
public final void writeShort(int v) throws IOExceptionWrites ashortto the underlying output stream as two bytes, high byte first. If no exception is thrown, the counterwrittenis incremented by2.- Specified by:
writeShortin interfaceDataOutput- Parameters:
v- ashortto be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeChar
public final void writeChar(int v) throws IOExceptionWrites acharto the underlying output stream as a 2-byte value, high byte first. If no exception is thrown, the counterwrittenis incremented by2.- Specified by:
writeCharin interfaceDataOutput- Parameters:
v- acharvalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeInt
public final void writeInt(int v) throws IOExceptionWrites anintto the underlying output stream as four bytes, high byte first. If no exception is thrown, the counterwrittenis incremented by4.- Specified by:
writeIntin interfaceDataOutput- Parameters:
v- anintto be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeLong
public final void writeLong(long v) throws IOExceptionWrites alongto the underlying output stream as eight bytes, high byte first. In no exception is thrown, the counterwrittenis incremented by8.- Specified by:
writeLongin interfaceDataOutput- Parameters:
v- alongto be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeFloat
public final void writeFloat(float v) throws IOExceptionConverts the float argument to anintusing thefloatToIntBitsmethod in classFloat, and then writes thatintvalue to the underlying output stream as a 4-byte quantity, high byte first. If no exception is thrown, the counterwrittenis incremented by4.- Specified by:
writeFloatin interfaceDataOutput- Parameters:
v- afloatvalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out,Float.floatToIntBits(float)
-
writeDouble
public final void writeDouble(double v) throws IOExceptionConverts the double argument to alongusing thedoubleToLongBitsmethod in classDouble, and then writes thatlongvalue to the underlying output stream as an 8-byte quantity, high byte first. If no exception is thrown, the counterwrittenis incremented by8.- Specified by:
writeDoublein interfaceDataOutput- Parameters:
v- adoublevalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out,Double.doubleToLongBits(double)
-
writeBytes
public final void writeBytes(String s) throws IOException
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 counterwrittenis incremented by the length ofs.- Specified by:
writeBytesin interfaceDataOutput- Parameters:
s- a string of bytes to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
FilterOutputStream.out
-
writeChars
public final void writeChars(String s) throws IOException
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 thewriteCharmethod. If no exception is thrown, the counterwrittenis incremented by twice the length ofs.- Specified by:
writeCharsin interfaceDataOutput- Parameters:
s- aStringvalue to be written.- Throws:
IOException- if an I/O error occurs.- See Also:
writeChar(int),FilterOutputStream.out
-
writeUTF
public final void writeUTF(String str) throws IOException
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
writeShortmethod 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 counterwrittenis incremented by the total number of bytes written to the output stream. This will be at least two plus the length ofstr, and at most two plus thrice the length ofstr.- Specified by:
writeUTFin interfaceDataOutput- Parameters:
str- a string to be written.- Throws:
IOException- if an I/O error occurs.
-
size
public final int size()
Returns the current value of the counterwritten, 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
writtenfield. - See Also:
written
-
-