- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.io.DataOutputStream
-
- 实现的所有接口
-
Closeable,DataOutput,Flushable,AutoCloseable
public class DataOutputStream extends FilterOutputStream implements DataOutput
数据输出流允许应用程序以可移植的方式将原始Java数据类型写入输出流。 然后,应用程序可以使用数据输入流来重新读取数据。- 从以下版本开始:
- 1.0
- 另请参见:
-
DataInputStream
-
-
字段汇总
字段 变量和类型 字段 描述 protected intwritten到目前为止写入数据输出流的字节数。-
声明的属性在类 java.io.FilterOutputStream
out
-
-
构造方法摘要
构造方法 构造器 描述 DataOutputStream(OutputStream out)创建新数据输出流以将数据写入指定的基础输出流。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 voidflush()刷新此数据输出流。intsize()返回计数器written的当前值,即written写入此数据输出流的字节数。voidwrite(byte[] b, int off, int len)将从偏移量off开始的指定字节数组中的len字节写入基础输出流。voidwrite(int b)将指定的字节(参数b的低8位)写入基础输出流。voidwriteBoolean(boolean v)将boolean写入基础输出流作为1字节值。voidwriteByte(int v)将byte写入基础输出流作为1字节值。voidwriteBytes(String s)将字符串作为字节序列写入基础输出流。voidwriteChar(int v)将char写入基础输出流,作为2字节值,高字节优先。voidwriteChars(String s)将字符串作为字符序列写入基础输出流。voidwriteDouble(double v)双参数传递给转换long使用doubleToLongBits方法在类Double,然后写入该long值基础输出流作为8字节的数量,高字节。voidwriteFloat(float v)浮子参数的转换int使用floatToIntBits方法在类Float,然后写入该int值基础输出流作为一个4字节的数量,高字节。voidwriteInt(int v)将int写入基础输出流,为四个字节,高字节优先。voidwriteLong(long v)将long写入基础输出流,为8字节,高字节优先。voidwriteShort(int v)将short写入基础输出流作为两个字节,高字节优先。voidwriteUTF(String str)使用 modified UTF-8编码以与机器无关的方式将字符串写入基础输出流。-
声明方法的类 java.io.FilterOutputStream
close, write
-
声明方法的类 java.io.OutputStream
nullOutputStream
-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
声明方法的接口 java.io.DataOutput
write
-
-
-
-
构造方法详细信息
-
DataOutputStream
public DataOutputStream(OutputStream out)
创建新数据输出流以将数据写入指定的基础输出流。 计数器written设置为零。- 参数
-
out- 要保存以供以后使用的基础输出流。 - 另请参见:
-
FilterOutputStream.out
-
-
方法详细信息
-
write
public void write(int b) throws IOException将指定的字节(参数b的低8位)写入基础输出流。 如果没有抛出异常,则计数器written递增1。实现
write的方法OutputStream。- Specified by:
-
write在界面DataOutput - 重写:
-
write在类FilterOutputStream - 参数
-
b-byte。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
write
public void write(byte[] b, int off, int len) throws IOException将从偏移量off开始的指定字节数组中的len字节写入基础输出流。 如果没有抛出异常,则计数器written递增len。- Specified by:
-
write,界面DataOutput - 重写:
-
write在类FilterOutputStream - 参数
-
b- 数据。 -
off- 数据中的起始偏移量。 -
len- 要写入的字节数。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
flush
public void flush() throws IOException刷新此数据输出流。 这会强制将任何缓冲的输出字节写出到流中。flush方法DataOutputStream调用其底层输出流的flush方法。- Specified by:
-
flush在界面Flushable - 重写:
-
flush在课程FilterOutputStream - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out,OutputStream.flush()
-
writeBoolean
public final void writeBoolean(boolean v) throws IOException将boolean写入基础输出流作为1字节值。 值true写为值(byte)1; 值false写为值(byte)0。 如果未引发异常,则计数器written将增加1。- Specified by:
-
writeBooleanin interfaceDataOutput - 参数
-
v- 要写入的值boolean。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeByte
public final void writeByte(int v) throws IOException将byte写入基础输出流作为1字节值。 如果没有抛出异常,则计数器written增加1。- Specified by:
-
writeByte,界面DataOutput - 参数
-
v- 要写入的值byte。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeShort
public final void writeShort(int v) throws IOException将short写入基础输出流,作为两个字节,高字节优先。 如果没有抛出异常,则计数器written增加2。- Specified by:
-
writeShort在界面DataOutput - 参数
-
v-short。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeChar
public final void writeChar(int v) throws IOException将char作为2字节值写入基础输出流,先写入高字节。 如果没有抛出异常,则计数器written递增2。- Specified by:
-
writeChar接口DataOutput - 参数
-
v- 要写入的值char。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeInt
public final void writeInt(int v) throws IOException将int写入基础输出流,为四个字节,高字节优先。 如果没有抛出异常,则计数器written递增4。- Specified by:
-
writeInt,界面DataOutput - 参数
-
v-int。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeLong
public final void writeLong(long v) throws IOException将long写入基础输出流,为8字节,高字节优先。 在抛出异常时,计数器written增加8。- Specified by:
-
writeLong,界面DataOutput - 参数
-
v-long。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeFloat
public final void writeFloat(float v) throws IOException浮子参数的转换int使用floatToIntBits方法在类Float,然后写入该int值基础输出流作为一个4字节的数量,高字节。 如果没有抛出异常,则计数器written增加4。- Specified by:
-
writeFloat接口DataOutput - 参数
-
v- 要写入的值float。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out,Float.floatToIntBits(float)
-
writeDouble
public final void writeDouble(double v) throws IOException双参数传递给转换long使用doubleToLongBits方法在类Double,然后写入该long值基础输出流作为8字节的数量,高字节。 如果没有抛出异常,则计数器written增加8。- Specified by:
-
writeDouble,界面DataOutput - 参数
-
v- 要写入的值double。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out,Double.doubleToLongBits(double)
-
writeBytes
public final void writeBytes(String s) throws IOException
将字符串作为字节序列写入基础输出流。 通过丢弃其高8位,按顺序写出字符串中的每个字符。 如果未引发异常,则计数器written的长度增加s。- Specified by:
-
writeBytes,界面DataOutput - 参数
-
s- 要写入的字节串。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.out
-
writeChars
public final void writeChars(String s) throws IOException
将字符串作为字符序列写入基础输出流。 每个字符都被写入数据输出流,就像通过writeChar方法一样。 如果没有抛出异常,则计数器written的增量为s两倍。- Specified by:
-
writeChars在界面DataOutput - 参数
-
s- 要写入的值String。 - 异常
-
IOException- 如果发生I / O错误。 - 另请参见:
-
writeChar(int),FilterOutputStream.out
-
writeUTF
public final void writeUTF(String str) throws IOException
使用modified UTF-8编码以与机器无关的方式将字符串写入基础输出流。首先,将两个字节写入输出流,就好像通过
writeShort方法一样,给出了要遵循的字节数。 该值是实际写出的字节数,而不是字符串的长度。 在该长度之后,使用针对该字符的修改的UTF-8编码依次输出该字符串的每个字符。 如果没有抛出异常,则计数器written增加写入输出流的总字节数。 这将至少两个加上str的长度,并且最多两个加三倍的长度str。- Specified by:
-
writeUTF在界面DataOutput - 参数
-
str- 要写入的字符串。 - 异常
-
IOException- 如果发生I / O错误。
-
size
public final int size()
返回计数器written的当前值,即written写入此数据输出流的字节数。 如果计数器溢出,它将被包装到Integer.MAX_VALUE。- 结果
-
written字段的值。 - 另请参见:
-
written
-
-