欢迎来到天天文库
浏览记录
ID:48737594
大小:213.00 KB
页数:22页
时间:2020-01-21
《JAVA程序员培训定制课程c14.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第十四章Java流式I/O编程本章内容java流式输入/输出原理java基本I/O流类型字节流和字符流节点流和处理流2JavaI/O基本原理为进行数据的输入/输出操作,Java中把不同的输入/输出源(键盘、文件、网络连接等)抽象表述为“流”(stream)。java.io包中定义了多个流类型(类或抽象类)来实现输入/输出功能。两种基本的流:输入流和输出流输入流:只能从中读取数据,而不能向其写出数据输出流:只能向其写出数据,而不能从中读取数据3节点流和处理流节点流:可以从/向一个特定的地方(节点)读写数据,例如磁盘或者一块内存。处理流:是对一个已存
2、在的流的连接和封装,通过所封装的流的功能调用实现数据读/写功能。4节点流和处理流5字符流和字节流按处理数据的单位划分,Java支持两种基本的流类型:字符流和字节流字节流字符流输入InputStreamReader输出OutputStreamWriter6InputStream类提供的方法三个基本的read方法:intread()intread(byte[]buffer)intread(byte[]buffer,intoffset,intlength)其它方法:voidclose()intavailable()skip(longn)booleanm
3、arkSupported()voidmark(intreadlimit)voidreset()7OutputStream类提供的方法三个基本的write方法:voidwrite(intc)voidwrite(byte[]buffer)voidwrite(byte[]buffer,intoffset,intlength)其它方法voidclose()voidflush()8Reader类提供的方法三个基本的read方法:intread()intread(char[]cbuf)intread(char[]cbuf,intoffset,intlengt
4、h)其它方法voidclose()booleanready()skip(longn)booleanmarkSupported()voidmark(intreadAheadLimit)voidreset()9Writer类提供的方法三个基本的write方法:voidwrite(intc)voidwrite(char[]cbuf)voidwrite(char[]cbuf,intoffset,intlength)voidwrite(Stringstring)voidwrite(Stringstring,intoffset,intlength)其它方法v
5、oidclose()voidflush()10节点流类型(NodeStreams)类型字符流字节流FileFileReaderFileWriterFileInputStreamFileOutputStreamMemoryArrayCharArrayReaderCharArrayWriterByteArrayInputStreamByteArrayOutputStreamMemoryStringStringReaderStringWriterPipePipedReaderPipedWriterPipedInputStreamPipedOutputS
6、tream11节点流应用举例--文件复制importjava.io.*;publicclassTest1{publicstaticvoidmain(String[]args){try{FileReaderinput=newFileReader("Test1.java");FileWriteroutput=newFileWriter("temp.txt");intread=input.read();while(read!=-1){output.write(read);read=input.read();}input.close();output.c
7、lose();}catch(IOExceptione){System.out.println(e);}}}12缓冲功能处理流举例importjava.io.*;publicclassTest2{publicstaticvoidmain(String[]args){try{FileReaderinput=newFileReader("Test2.java");BufferedReaderbr=newBufferedReader(input);FileWriteroutput=newFileWriter("temp.txt");BufferedWri
8、terbw=newBufferedWriter(output);Strings=br.readLine();while(s!=null)
此文档下载收益归作者所有