Module java.base
Package java.io

Class DataOutputStream

    • Field Summary

      Fields 
      Modifier and TypeFieldDescription
      protected intwritten
      The number of bytes written to the data output stream so far.
    • Constructor Summary

      Constructors 
      ConstructorDescription
      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 TypeMethodDescription
      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)
      Writeslen bytes from the specified byte array starting at offsetoff to 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 aboolean to the underlying output stream as a 1-byte value.
      voidwriteByte​(int v)
      Writes out abyte to 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 achar to 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 along using thedoubleToLongBits method in classDouble, and then writes thatlong value to the underlying output stream as an 8-byte quantity, high byte first.
      voidwriteFloat​(float v)
      Converts the float argument to anint using thefloatToIntBits method in classFloat, and then writes thatint value to the underlying output stream as a 4-byte quantity, high byte first.
      voidwriteInt​(int v)
      Writes anint to the underlying output stream as four bytes, high byte first.
      voidwriteLong​(long v)
      Writes along to the underlying output stream as eight bytes, high byte first.
      voidwriteShort​(int v)
      Writes ashort to the underlying output stream as two bytes, high byte first.
      voidwriteUTF​(String str)
      Writes a string to the underlying output stream usingmodified UTF-8 encoding in a machine-independent manner.
    • Field Detail

      • 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.
    • Constructor Detail

      • DataOutputStream

        public DataOutputStream​(OutputStream out)
        Creates a new data output stream to write data to the specified underlying output stream. The counterwritten is 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)           throwsIOException
        Writes the specified byte (the low eight bits of the argumentb) to the underlying output stream. If no exception is thrown, the counterwritten is incremented by1.

        Implements thewrite method ofOutputStream.

        Specified by:
        write in interface DataOutput
        Overrides:
        write in class FilterOutputStream
        Parameters:
        b - thebyte to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • write

        public void write​(byte[] b,                  int off,                  int len)           throwsIOException
        Writeslen bytes from the specified byte array starting at offsetoff to the underlying output stream. If no exception is thrown, the counterwritten is incremented bylen.
        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.
        See Also:
        FilterOutputStream.out
      • writeBoolean

        public final void writeBoolean​(boolean v)                        throwsIOException
        Writes aboolean to the underlying output stream as a 1-byte value. The valuetrue is written out as the value(byte)1; the valuefalse is written out as the value(byte)0. If no exception is thrown, the counterwritten is incremented by1.
        Specified by:
        writeBoolean in interface DataOutput
        Parameters:
        v - aboolean value to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeByte

        public final void writeByte​(int v)                     throwsIOException
        Writes out abyte to the underlying output stream as a 1-byte value. If no exception is thrown, the counterwritten is incremented by1.
        Specified by:
        writeByte in interface DataOutput
        Parameters:
        v - abyte value to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeShort

        public final void writeShort​(int v)                      throwsIOException
        Writes ashort to the underlying output stream as two bytes, high byte first. If no exception is thrown, the counterwritten is incremented by2.
        Specified by:
        writeShort in interface DataOutput
        Parameters:
        v - ashort to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeChar

        public final void writeChar​(int v)                     throwsIOException
        Writes achar to the underlying output stream as a 2-byte value, high byte first. If no exception is thrown, the counterwritten is incremented by2.
        Specified by:
        writeChar in interface DataOutput
        Parameters:
        v - achar value to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeInt

        public final void writeInt​(int v)                    throwsIOException
        Writes anint to the underlying output stream as four bytes, high byte first. If no exception is thrown, the counterwritten is incremented by4.
        Specified by:
        writeInt in interface DataOutput
        Parameters:
        v - anint to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeLong

        public final void writeLong​(long v)                     throwsIOException
        Writes along to the underlying output stream as eight bytes, high byte first. In no exception is thrown, the counterwritten is incremented by8.
        Specified by:
        writeLong in interface DataOutput
        Parameters:
        v - along to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        FilterOutputStream.out
      • writeFloat

        public final void writeFloat​(float v)                      throwsIOException
        Converts the float argument to anint using thefloatToIntBits method in classFloat, and then writes thatint value to the underlying output stream as a 4-byte quantity, high byte first. If no exception is thrown, the counterwritten is incremented by4.
        Specified by:
        writeFloat in interface DataOutput
        Parameters:
        v - afloat value 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)                       throwsIOException
        Converts the double argument to along using thedoubleToLongBits method in classDouble, and then writes thatlong value to the underlying output stream as an 8-byte quantity, high byte first. If no exception is thrown, the counterwritten is incremented by8.
        Specified by:
        writeDouble in interface DataOutput
        Parameters:
        v - adouble value 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)                      throwsIOException
        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 counterwritten is incremented by the length ofs.
        Specified by:
        writeBytes in interface DataOutput
        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)                      throwsIOException
        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 thewriteChar method. If no exception is thrown, the counterwritten is incremented by twice the length ofs.
        Specified by:
        writeChars in interface DataOutput
        Parameters:
        s - aString value to be written.
        Throws:
        IOException - if an I/O error occurs.
        See Also:
        writeChar(int),FilterOutputStream.out
      • writeUTF

        public final void writeUTF​(String str)                    throwsIOException
        Writes a string to the underlying output stream usingmodified UTF-8 encoding in a machine-independent manner.

        First, two bytes are written to the output stream as if by thewriteShort 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 counterwritten is 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:
        writeUTF in interface DataOutput
        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 thewritten field.
        See Also:
        written