欢迎来到天天文库
浏览记录
ID:46949627
大小:382.81 KB
页数:23页
时间:2019-12-01
《《Java流式IO编程》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)booleanmarkSupported()voidmark(int
3、readlimit)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,intlength)其它方法voidclose()booleanready()skip(longn)
4、booleanmarkSupported()voidmark(intreadAheadLimit)voidreset()9Writer类提供的方法三个基本的write方法:voidwrite(intc)voidwrite(char[]cbuf)voidwrite(char[]cbuf,intoffset,intlength)voidwrite(Stringstring)voidwrite(Stringstring,intoffset,intlength)其它方法voidclose()voidflush()10节点流类型(NodeStreams)类型字符流字节流FileFileR
5、eaderFileWriterFileInputStreamFileOutputStreamMemoryArrayCharArrayReaderCharArrayWriterByteArrayInputStreamByteArrayOutputStreamMemoryStringStringReaderStringWriterPipePipedReaderPipedWriterPipedInputStreamPipedOutputStream11节点流应用举例--文件复制importjava.io.*;publicclassTest1{publicstaticvoidmain(
6、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.close();}catch(IOExceptione){System.out.println(e);}}}12缓冲功能处理流举例importjava.io.*;publicclas
7、sTest2{publicstaticvoidmain(String[]args){try{FileReaderinput=newFileReader("Test2.java");BufferedReaderbr=newBufferedReader(input);FileWriteroutput=newFileWriter("temp.txt");BufferedWriterbw=newBufferedWriter(output);Strings=br.readLine();while(s!
此文档下载收益归作者所有