欢迎来到天天文库
浏览记录
ID:37862045
大小:2.38 MB
页数:19页
时间:2019-06-01
《Java高级IO流》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、模块十五高级I/O流模块十五高级I/O流11.I/O基础知识22.字节流(InputStream)22.1.InputStream的方法22.2.OutputStream方法33.字符流33.1.Reader方法33.2.Writer方法44.节点流45.AReader/WriterExample46.ABufferedReader/WriterExample57.I/O流的链68.过程流69.基本字节流类79.1.FileInputStream和FileOutputStream79.2.BufferInputStream和BufferOutputStream79.
2、3.PipedInputStream和PipedOutputStream89.4.DataInputStream和DataOutputStream810.基本字符流类810.1.InputStreamReader和OutputStreamWriter910.2.缓冲读者和作者910.3.读入字符串输入910.4.使用其它字符转换1011.URL输入流1011.1.打开一个URL输入流1012.随机文件1112.1.创建一个随机存取文件1112.2.存取信息1112.3.添加信息1113.第十节串行化1213.1.对象图1213.2.读写一个对象流1214.练习:熟悉
3、I/O1414.1.打开文件1414.2.创建一个简单的数据库程序1414.3.使用保持1414.4.检查一下你的进度141919本模块讨论Java语言是怎样通过流来操纵字节、字符和对象I/O的。此外,本模块还要讨论节点流。在完成了本模块的学习后,你应当能够:l描述和使用java.io包的流式思想l构造文件和过程流,并恰当地使用它们l区别字节流与字符流,并进行合适的选择l考察并操作文件和目录l读、写和更新文本和数据文件l使用Serialization接口来编码对象的状态1.I/O基础知识在Java语言中数据流是发送或接收数据的管道。通常,你的程序是流的一个端点,其它
4、程序或文件是流的另一个端点。源端点和目的端点分别叫做inputstream(输入流)和outputstream(输出流)。你可以从输入流读,但你不能对它写;同样,你可以向输出流写,但不能从输出流读。图15-1数据流分类bytestreamcharacterstreamsSourcestreamsInputStreamReaderSinkstreamOutputStreamWriter如图15-1所示:Java技术支持两种数据类型的流:InputStream和OutputStream:字节流。其它字节流都是InputStream或OutputStream的子类。Rea
5、der和Writer:字符流。其它字符流都是Reader或Writer的子类。2.字节流(InputStream)2.1.InputStream的方法InputStream有三个方法访问它的数据:lintread():简单读方法返回一个int值,它是从流里读出的一个字节。如果遇到文件结束则返回-1。lintread(byte[]):将数据读入到字节数组中,并返回所读的字节数。19lintread(byte[],intoffset,intlength)将数据读入到字节数组中,并返回所读的字节数。Offset是数组的偏移量,length是读取的长度。voidclose(
6、)你完成流操作之后,就关闭这个流。如果你有一个流所组成的栈,使用过滤器流,就关闭栈顶部的流。这个关闭操作会关闭其余的流。intavailable()这个方法报告立刻可以从流中读取的字节数。在这个调用之后的实际读操作可能返回更多的字节数。skip(long)这个方法丢弃了流中指定数目的字符。booleanmarkSupported()voidmark(int)voidreset()如果流支持“回放”操作,则这些方法可以用来完成这个操作。如果mark()和reset()方法可以在特定的流上操作,则markSupported()方法将返回ture。mark(int)方法用
7、来指明应当标记流的当前点和分配一个足够大的缓冲区,它最少可以容纳参数所指定数量的字节。在随后的read()操作完成之后,调用reset()方法来返回你标记的输入点。1.1.OutputStream方法voidwrite(int)voidwrite(byte[])voidwrite(byte[],int,int)这些方法写输出流。和输入一样,总是尝试以实际最大的块进行写操作。voidclose()当你完成写操作后,就关闭输出流。如果你有一个流所组成的栈,就关闭栈顶部的流。这个关闭操作会关闭其余的流。voidflush()有时一个输出流在积累了若干次之后才进行真正的
此文档下载收益归作者所有