- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]JAVA输入输出课程
File类 一个File类的对象,表示了磁盘上的文件或目录。 File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作。 流操作的过程 输入流(Input Stream)可从中读出一系列字节的对象称为输入流。 Reading: open a stream while more information read information close the stream 两种结构的流 ? Node Stream(节点流) :从特定源地方读写的流类,如磁盘文件或内存某区域进行读或写入。 ? Filter Steam(过滤流):使用已经存在的输入流或输出流连接创建。使用节点流作为输入或输出。 两种流类的体系(字节流与字符流) ? Java.io包中包含了流式I/O所需要的所有类。 ?流式I/O类根据操作的数据类型(16位字符或字节)分成两个层次体系。 基本的字节流类 FileInputStream和FileOutputStream 节点流,用于从文件中读取或往文件中写入字节流。如果在构造FileOutputStream时,文件已经存在,则覆盖这个文件。 BufferedInputStream和BufferedOutputStream 过滤流,需要使用已经存在的节点流来构造,提供带缓冲的读写,提高了读写的效率。 DataInputStream和DataOutputStream 过滤流,需要使用已经存在的节点流来构造,提供了读写Java中的基本数据类型的功能。 PipedInputStream和PipedOutputStream 管道流,用于线程间的通信。一个线程的PipedInputStream对象从另一个线程的PipedOutputStream对象读取输入。要使管道流有用,必须同时构造管道输入流和管道输出流。 Java I/O库的设计原则 Java的I/O库提供了一个称做链接的机制,可以将一个流与另一个流首尾相接,形成一个流管道的链接。这种机制实际上是一种被称为Decorator(装饰)设计模式的应用。 通过流的链接,可以动态的增加流的功能,而这种功能的增加是通过组合一些流的基本功能而动态获取的。 我们要获取一个I/O对象,往往需要产生多个I/O对象,这也是Java I/O库不太容易掌握的原因,但在I/O库中Decorator模式的运用,给我们提供了实现上的灵活性。 I/O流的链接 * * 第七章 输入/输出 ?文件 ?流式I/O基础 ?随机存取文件 ?对象输入/输出流 文件 ? Java.io.File 文件类提供获取文件基本信息,以及 其它与文件相关的操作。 ?创建新的文件对象: File myFile; myFile=new File(“mymotd”); myFile = new File(“\”,”mymotd”); … 流Stream的概念 ?流(Stream)是字节的源或目的,从源到目的的字节的有序序列,先进先出。 ?两种基本流: Input stream(输入流), Output stream(输出流) 输出流(Output Stream)能向其中写入一系列字节的对象称为输出流。 Writing : open a stream while more information write information close the stream 字节流——输入流类层次 InputStream StringBufferInputStream FileInputStream ByteArrayInputStream FilterInputStream ObjectInputStream PipedInputStream SequenceInputStream LineNumberInputStream DataInputStream BufferedInputStream PushbackInputStream java.io包中 InputStream的类层次 InputStream字节流的方法 ?三个基本read()方法 int read() :读取一个字节数据,并返回读到的数据, 如果返回-1,表示读到了输入流的末尾。 int read(byte[ ] ) :将数据读入一个字节数组,同时返 回实际读取的字节数。如果返回-1,表示读到了输入流的末尾。 int read( byte[], int offset, int length ):将数据读入一个字节 数组,同时返回实际读取的字节数。如果返回-1,表示读
文档评论(0)