-
- All Known Subinterfaces:
ImageOutputStream,ObjectOutput
- All Known Implementing Classes:
DataOutputStream,FileCacheImageOutputStream,FileImageOutputStream,ImageOutputStreamImpl,MemoryCacheImageOutputStream,ObjectOutputStream,RandomAccessFile
public interface DataOutputTheDataOutputinterface provides for converting data from any of the Java primitive types to a series of bytes and writing these bytes to a binary stream. There is also a facility for converting aStringinto modified UTF-8 format and writing the resulting series of bytes.For all the methods in this interface that write bytes, it is generally true that if a byte cannot be written for any reason, an
IOExceptionis thrown.- Since:
- 1.0
- See Also:
DataInput,DataOutputStream
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidwrite(byte[] b)Writes to the output stream all the bytes in arrayb.voidwrite(byte[] b, int off, int len)Writeslenbytes from arrayb, in order, to the output stream.voidwrite(int b)Writes to the output stream the eight low-order bits of the argumentb.voidwriteBoolean(boolean v)Writes abooleanvalue to this output stream.voidwriteByte(int v)Writes to the output stream the eight low- order bits of the argumentv.voidwriteBytes(String s)Writes a string to the output stream.voidwriteChar(int v)Writes acharvalue, which is comprised of two bytes, to the output stream.voidwriteChars(String s)Writes every character in the strings, to the output stream, in order, two bytes per character.voidwriteDouble(double v)Writes adoublevalue, which is comprised of eight bytes, to the output stream.voidwriteFloat(float v)Writes afloatvalue, which is comprised of four bytes, to the output stream.voidwriteInt(int v)Writes anintvalue, which is comprised of four bytes, to the output stream.voidwriteLong(long v)Writes alongvalue, which is comprised of eight bytes, to the output stream.voidwriteShort(int v)Writes two bytes to the output stream to represent the value of the argument.voidwriteUTF(String s)Writes two bytes of length information to the output stream, followed by the modified UTF-8 representation of every character in the strings.
-
-
-
Method Detail
-
write
void write(int b) throws IOExceptionWrites to the output stream the eight low-order bits of the argumentb. The 24 high-order bits ofbare ignored.- Parameters:
b- the byte to be written.- Throws:
IOException- if an I/O error occurs.
-
write
void write(byte[] b) throws IOExceptionWrites to the output stream all the bytes in arrayb. Ifbisnull, aNullPointerExceptionis thrown. Ifb.lengthis zero, then no bytes are written. Otherwise, the byteb[0]is written first, thenb[1], and so on; the last byte written isb[b.length-1].- Parameters:
b- the data.- Throws:
IOException- if an I/O error occurs.
-
write
void write(byte[] b, int off, int len) throws IOExceptionWriteslenbytes from arrayb, in order, to the output stream. Ifbisnull, aNullPointerExceptionis thrown. Ifoffis negative, orlenis negative, oroff+lenis greater than the length of the arrayb, then anIndexOutOfBoundsExceptionis thrown. Iflenis zero, then no bytes are written. Otherwise, the byteb[off]is written first, thenb[off+1], and so on; the last byte written isb[off+len-1].- 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.
-
writeBoolean
void writeBoolean(boolean v) throws IOExceptionWrites abooleanvalue to this output stream. If the argumentvistrue, the value(byte)1is written; ifvisfalse, the value(byte)0is written. The byte written by this method may be read by thereadBooleanmethod of interfaceDataInput, which will then return abooleanequal tov.- Parameters:
v- the boolean to be written.- Throws:
IOException- if an I/O error occurs.
-
writeByte
void writeByte(int v) throws IOExceptionWrites to the output stream the eight low- order bits of the argumentv. The 24 high-order bits ofvare ignored. (This means thatwriteBytedoes exactly the same thing aswritefor an integer argument.) The byte written by this method may be read by thereadBytemethod of interfaceDataInput, which will then return abyteequal to(byte)v.- Parameters:
v- the byte value to be written.- Throws:
IOException- if an I/O error occurs.
-
writeShort
void writeShort(int v) throws IOExceptionWrites two bytes to the output stream to represent the value of the argument. The byte values to be written, in the order shown, are:(byte)(0xff & (v >> 8)) (byte)(0xff & v)The bytes written by this method may be read by the
readShortmethod of interfaceDataInput, which will then return ashortequal to(short)v.- Parameters:
v- theshortvalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeChar
void writeChar(int v) throws IOExceptionWrites acharvalue, which is comprised of two bytes, to the output stream. The byte values to be written, in the order shown, are:(byte)(0xff & (v >> 8)) (byte)(0xff & v)The bytes written by this method may be read by the
readCharmethod of interfaceDataInput, which will then return acharequal to(char)v.- Parameters:
v- thecharvalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeInt
void writeInt(int v) throws IOExceptionWrites anintvalue, which is comprised of four bytes, to the output stream. The byte values to be written, in the order shown, are:(byte)(0xff & (v >> 24)) (byte)(0xff & (v >> 16)) (byte)(0xff & (v >> 8)) (byte)(0xff & v)The bytes written by this method may be read by the
readIntmethod of interfaceDataInput, which will then return anintequal tov.- Parameters:
v- theintvalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeLong
void writeLong(long v) throws IOExceptionWrites alongvalue, which is comprised of eight bytes, to the output stream. The byte values to be written, in the order shown, are:(byte)(0xff & (v >> 56)) (byte)(0xff & (v >> 48)) (byte)(0xff & (v >> 40)) (byte)(0xff & (v >> 32)) (byte)(0xff & (v >> 24)) (byte)(0xff & (v >> 16)) (byte)(0xff & (v >> 8)) (byte)(0xff & v)The bytes written by this method may be read by the
readLongmethod of interfaceDataInput, which will then return alongequal tov.- Parameters:
v- thelongvalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeFloat
void writeFloat(float v) throws IOExceptionWrites afloatvalue, which is comprised of four bytes, to the output stream. It does this as if it first converts thisfloatvalue to anintin exactly the manner of theFloat.floatToIntBitsmethod and then writes theintvalue in exactly the manner of thewriteIntmethod. The bytes written by this method may be read by thereadFloatmethod of interfaceDataInput, which will then return afloatequal tov.- Parameters:
v- thefloatvalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeDouble
void writeDouble(double v) throws IOExceptionWrites adoublevalue, which is comprised of eight bytes, to the output stream. It does this as if it first converts thisdoublevalue to alongin exactly the manner of theDouble.doubleToLongBitsmethod and then writes thelongvalue in exactly the manner of thewriteLongmethod. The bytes written by this method may be read by thereadDoublemethod of interfaceDataInput, which will then return adoubleequal tov.- Parameters:
v- thedoublevalue to be written.- Throws:
IOException- if an I/O error occurs.
-
writeBytes
void writeBytes(String s) throws IOException
Writes a string to the output stream. For every character in the strings, taken in order, one byte is written to the output stream. Ifsisnull, aNullPointerExceptionis thrown.If
s.lengthis zero, then no bytes are written. Otherwise, the characters[0]is written first, thens[1], and so on; the last character written iss[s.length-1]. For each character, one byte is written, the low-order byte, in exactly the manner of thewriteBytemethod . The high-order eight bits of each character in the string are ignored.- Parameters:
s- the string of bytes to be written.- Throws:
IOException- if an I/O error occurs.
-
writeChars
void writeChars(String s) throws IOException
Writes every character in the strings, to the output stream, in order, two bytes per character. Ifsisnull, aNullPointerExceptionis thrown. Ifs.lengthis zero, then no characters are written. Otherwise, the characters[0]is written first, thens[1], and so on; the last character written iss[s.length-1]. For each character, two bytes are actually written, high-order byte first, in exactly the manner of thewriteCharmethod.- Parameters:
s- the string value to be written.- Throws:
IOException- if an I/O error occurs.
-
writeUTF
void writeUTF(String s) throws IOException
Writes two bytes of length information to the output stream, followed by the modified UTF-8 representation of every character in the strings. Ifsisnull, aNullPointerExceptionis thrown. Each character in the stringsis converted to a group of one, two, or three bytes, depending on the value of the character.If a character
cis in the range\u0001through\u007f, it is represented by one byte:(byte)c
If a character
cis\u0000or is in the range\u0080through\u07ff, then it is represented by two bytes, to be written in the order shown:(byte)(0xc0 | (0x1f & (c >> 6))) (byte)(0x80 | (0x3f & c))If a character
cis in the range\u0800throughuffff, then it is represented by three bytes, to be written in the order shown:(byte)(0xe0 | (0x0f & (c >> 12))) (byte)(0x80 | (0x3f & (c >> 6))) (byte)(0x80 | (0x3f & c))First, the total number of bytes needed to represent all the characters of
sis calculated. If this number is larger than65535, then aUTFDataFormatExceptionis thrown. Otherwise, this length is written to the output stream in exactly the manner of thewriteShortmethod; after this, the one-, two-, or three-byte representation of each character in the stringsis written.The bytes written by this method may be read by the
readUTFmethod of interfaceDataInput, which will then return aStringequal tos.- Parameters:
s- the string value to be written.- Throws:
IOException- if an I/O error occurs.
-
-