Class DataOutputStream
- 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:
- JDK1.0
- See Also:
DataInputStream
Fields
| Modifier and Type | Field and Description |
|---|---|
protected int |
written The number of bytes written to the data output stream so far. |
Fields inherited from class java.io.FilterOutputStream
out Constructors
| Constructor and Description |
|---|
DataOutputStream(OutputStream out) Creates a new data output stream to write data to the specified underlying output stream. |
Methods
| Modifier and Type | Method and Description |
|---|---|
void |
flush() Flushes this data output stream. |
int |
size() Returns the current value of the counter |
void |
write(byte[] b,
int off,
int len) Writes |
void |
write(int b) Writes the specified byte (the low eight bits of the argument |
void |
writeBoolean(boolean v) Writes a |
void |
writeByte(int v) Writes out a |
void |
writeBytes(String s) Writes out the string to the underlying output stream as a sequence of bytes. |
void |
writeChar(int v) Writes a |
void |
writeChars(String s) Writes a string to the underlying output stream as a sequence of characters. |
void |
writeDouble(double v) Converts the double argument to a |
void |
writeFloat(float v) Converts the float argument to an |
void |
writeInt(int v) Writes an |
void |
writeLong(long v) Writes a |
void |
writeShort(int v) Writes a |
void |
writeUTF(String str) Writes a string to the underlying output stream using modified UTF-8 encoding in a machine-independent manner. |
Methods inherited from class java.io.FilterOutputStream
close, write Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Methods inherited from interface java.io.DataOutput
write Fields
written
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.
Constructors
DataOutputStream
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- the underlying output stream, to be saved for later use. - See Also:
FilterOutputStream.out
Methods
write
public void write(int b)
throws IOException 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.
- 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 IOException 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.
- 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 IOException 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.
- 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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 IOException 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:
-
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 counter written is incremented by the length of s.
- 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 the writeChar method. If no exception is thrown, the counter written is incremented by twice the length of s.
- 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 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.
- 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 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
writtenfield. - See Also:
written
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/java/io/DataOutputStream.html