第9章 java输入输出

第9章 java输入输出

ID:6111282

大小:270.50 KB

页数:38页

时间:2018-01-03

第9章 java输入输出_第1页
第9章 java输入输出_第2页
第9章 java输入输出_第3页
第9章 java输入输出_第4页
第9章 java输入输出_第5页
资源描述:

《第9章 java输入输出》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第9章Java输入/输出输入/输出处理是程序设计中的重要部分,例如从键盘读取数据、从文件中读取数据或向文件中写数据等。Java语言把这些不同类型的输入、输出源抽象为流(Stream),用统一接口来表示,从而使程序简单明了。核心内容:1.流的概念2.字节流与字符流3.标准输入输出4.文件输入输出5.流的包装和随机存取文件。9.1输入/输出基础Java语言的输入/输出功能必须使用类库java.io来实现,这个类库中的大部分是用来完成流式输入/输出的类。9.1.1流的概念在Java语言中程序所完成的输入和输出操作是以流的形式来实现的

2、。所谓流,是指在计算机的输入与输出之间运动的数据序列。流序列中的数据既可以是未加工的原始的二进制数据,也可以是经过一定编码处理后符合某种格式规定的特定数据。通常,Java程序的输入/输出操作主要针对三种不同的类型:(1)控制台,指的是屏幕输出(在Windows系统下指的是DOS窗口)和键盘输入;(2)文件,针对磁盘文件的读/写操作;(3)网络,通过网络套接字所实现的数据访问。基于上述流的概念,通过Java程序实现输入/输入操作必须遵循下列流程,该流程适用于上述所提到的文件和网络输入/输出类型。这里将输入操作定义为“读”,读操作

3、针对的流为输入流;将输出操作定义为“写”,写操作针对的流为输出流。(1)“读”流程openaninputstream//打开一个输入流whilemoreinformation//判断该流中是否存有数据readinformation//如果有数据,则读入程序closetheinputstream//输入流中数据读完,关闭该输入流(2)“写”流程37openanoutputstream//打开一个输出流whilemoreinformation//判断程序中是否有数据要写到该输出流中writeinformation//如果有数据,则

4、写入closetheoutputstream//数据写完,关闭该输出流输入流只能从中读取数据,而不能向其写出数据;输出流只能向其写出数据,而不能从中读取数据。9.1.2字节流与字符流根据流中基本数据单位的不同,流被分为字节流(bytestream)和字符流(characterstream)。字节流是以字节(8个bit)为单位进行读/写操作,字符流则是根据所定义的字符编码格式以字符为单位进行读和写。举一个简单的例子,“java语言”这个字符串如果保存在一个文本文件中则占有8个字节,一个中文字符由两个字节所组成。若以字节流方式读取

5、该字符串则需读8次,因为存在8个字节;而以字符流的方式则需读6次,因为是6个字符。中文Windows系统下的Java环境是以中文字符编码为默认格式,即“GB2312”或“GBK”,可以自动判断中文字符。若是在英文Windows系统或UNIX系统下,对于中文的识别则需指定中文字符编码格式,这是在字符流读/写时要注意的,需要注意的是:本质上所有的读/写操作都是以字节为单位进行的。Java语言提供了基于字符的流是为了给处理字符提供更方便、更有效的方法。下面是对字节流类和字符流类的介绍。1.字节流类字节流类由两个层次结构定义。在顶层有

6、两个抽象类:InputStream和OutputStream。每个抽象类都有多个具体的子类,这些子类对不同的外设进行处理,例如磁盘文件、网络连接、甚至是内存缓冲区。需要说明的是,要使用流类,必须导入java.io包。如表9-1所示为字节流类。表9-1字节流类流类含义BufferedInputStream缓冲输入流BufferOutputStream缓冲输出流ByteArrayInputStream从字节数组读取的输入流ByteArrayOutputStream向字节数组写入的输出流DataInputStream包含读取Java

7、标准数据类型的输入流DataOutputStream包含编写Java标准数据类型的输出流FileInputStream读取文件的输入流FileOutputStream写文件的输出流FilterinputStream实现InputStreamFilterOutputStream实现OutputStreamInputStream描述流输入的抽象类OutputStream描述流输出的抽象类PipedInputStream输入管道PipedOutputStream输出管道PrintStream包含print()和println()的输

8、出流37PushbackInputStream支持向输入流返回一个字节的单字节的“unget”的输入流RandomAccessFile支持随机文件输入/输出SequenceInputStream两个或两个以上顺序读取的输入流组成的输入流抽象类InputStream和Outpu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。