欢迎来到天天文库
浏览记录
ID:20416638
大小:36.90 KB
页数:14页
时间:2018-10-13
《输入输出流总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、输入、输出流总结一、理解数据流流一般分为输入流(InputStream)和输出流(OutputStream)两类。二、Java的标准数据流标准输入输出指在字符方式下(如DOS),程序与系统进行交互的方式,分为三种:标准输入studin,对象是键盘。标准输出stdout,对象是屏幕。标准错误输出stderr,对象也是屏幕。三、字节流方法字节流:从InputStream和OutputStream派生出来的一系列类。这类流以字节(byte)为基本处理单位。 InputStream、OutputStream FileInputStream、FileOutputStream
2、 PipedInputStream、PipedOutputStream ByteArrayInputStream、ByteArrayOutputStream FilterInputStream、FilterOutputStream DataInputStream、DataOutputStream BufferedInputStream、BufferedOutputStream1、InputStream和OutputStream read():从流中读入数据 skip():跳过流中若干字节数 available():返
3、回流中可用字节数 mark():在流中标记一个位置 reset():返回标记过得位置 markSupport():是否支持标记和复位操作 close():关闭流 intread():从输入流中读一个字节,形成一个0~255之间的整数返回(是一个抽象方法)。 intread(byteb[]):读多个字节到数组中。 intread(byteb[],intoff,intlen):从输入流中读取长度为len的数据,写入数组b中从索引off开始的位置,并返回读取得字节数。 write(intb):将一个整数输出到流中(只输出低位字节,抽象) write(byteb[
4、]):将字节数组中的数据输出到流中 write(byteb[],intoff,intlen):将数组b中从off指定的位置开始,长度为len的数据输出到流中 flush():刷空输出流,并将缓冲区中的数据强制送出 close():关闭流例:打开文件。本例以FileInputStream的read(buffer)方法,每次从源程序文件OpenFile.java中读取512个字节,存储在缓冲区buffer中,再将以buffer中的值构造的字符串newString(buffer)显示在屏幕上。程序如下:importjava.io.*;publicclassOpenFile{publi
5、cstaticvoidmain(Stringargs[])throwsIOException{try{//创建文件输入流对象FileInputStreamrf=newFileInputStream("OpenFile.java");intn=512;bytebuffer[]=newbyte[n];while((rf.read(buffer,0,n)!=-1)&&(n>0))//读取输入流{System.out.print(newString(buffer));}System.out.println();rf.close();//关闭输入流}catch(IOExceptionioe){Syst
6、em.out.println(ioe);}catch(Exceptione){System.out.println(e);}}}例:写入文件。本例用System.in.read(buffer)从键盘输入一行字符,存储在缓冲区buffer中,再以FileOutStream的write(buffer)方法,将buffer中内容写入文件Write1.txt中,程序如下:importjava.io.*;publicclassWrite1{publicstaticvoidmain(Stringargs[]){try{System.out.print("Input:");intcount,n=512;b
7、ytebuffer[]=newbyte[n];count=System.in.read(buffer);//读取标准输入流FileOutputStreamwf=newFileOutputStream("Write1.txt");//创建文件输出流对象wf.write(buffer,0,count);//写入输出流wf.close();//关闭输出流System.out.println("SavetoWrite
此文档下载收益归作者所有