Java DataOutputStream size()方法与示例
DataOutputStream类size()方法
size()方法在java.io包中可用。
size()方法用于返回此流的大小,换句话说,可以说它返回包含已写入字节的变量计数器的值。
size()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名访问该方法,则会收到错误消息。
返回size时,size()方法不会引发异常。
语法:
public final int size();
参数:
它不接受任何参数。
返回值:
方法的返回类型为int,它返回变量计数器的最后一个值。
示例
//Java程序演示示例
//size()DataOutputStream的int方法的说明
import java.io.*;
public class SizeOfDOS {
public static void main(String[] args) throws IOException {
InputStream is_stm = null;
DataInputStream dis_stm = null;
FileOutputStream fos_stm = null;
DataOutputStream dos_stm = null;
byte[] b_arr = {
12,
20,
45,
98,
75,
69,
30,
58,
47,
61,
83,
55
};
try {
//实例化FileInputStream-
//DataInputStream,FileOutputStream-
//和DataOutputStream-
fos_stm = new FileOutputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
dos_stm = new DataOutputStream(fos_stm);
is_stm = new FileInputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
dis_stm = new DataInputStream(is_stm);
//循环写入每个字节直到结束
for (byte val: b_arr) {
//通过使用write()方法isto-
//将字节值写入
//DataOutputStreamdos_stm-
dos_stm.write(val);
}
//循环读取可用数据直到结束
while (dis_stm.available() > 0) {
//通过使用read()isto方法读取
//来自dis_stm的字节
int in = dis_stm.read();
System.out.println("dis_stm.read(): " + in );
}
System.out.println();
//通过使用size()isto方法返回
//该流的大小
int size = dos_stm.size();
System.out.println("dos_stm.size(): " + size);
} catch (Exception ex) {
System.out.println(ex.toString());
} finally {
//要释放链接的系统资源
//这些流
if (is_stm != null)
is_stm.close();
if (dis_stm != null)
dis_stm.close();
if (dos_stm != null)
dos_stm.close();
if (fos_stm != null)
fos_stm.close();
}
}
}输出结果
dis_stm.read(): 12 dis_stm.read(): 20 dis_stm.read(): 45 dis_stm.read(): 98 dis_stm.read(): 75 dis_stm.read(): 69 dis_stm.read(): 30 dis_stm.read(): 58 dis_stm.read(): 47 dis_stm.read(): 61 dis_stm.read(): 83 dis_stm.read(): 55 dos_stm.size(): 12