- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 输入与输出 (时间:2次课,4学时) 第7章 输入与输出 教学提示:在Java开发环境中,java.io包为用户提供了几乎所有常用的数据流,因此在所有涉及数据流操作的程序中几乎都应在程序的最前面加入语句import java.io.*;,从而使用这些由环境本身提供的数据流类。 本章主要介绍:I/O流、InputStream类常用接口、OutputStream类常用接口、Reader类常用接口、Writer类常用接口 第7章 输入与输出 7.1 输入/输出包 7.2 常用的输入/输出流 7.3 对象流 7.4 过滤流 7.5 字节流与字符流的转换 7.6 课后练习 7.1 输入/输出包 7.1.1 I/O流 7.1.2 InputStream类常用接口 7.1.3 OutputStream类常用接口 7.1.4 Reader类常用接口 7.1.5 Writer类常用接口 7.1 输入/输出包 现在开始介绍java.io包的内部原理。显然,这个Java包的目的是引导数据和对象的I/O操作。程序员需要使用这个Java包把数据写到磁盘文件、套接字、URL以及系统控制台上,并从中读取输入数据。还有一些可利用的格式字符串数据和处理Zip与Jar文件的工具。 本节将重点讲述java.io包中的常用输入输出类。 7.1.1 I/O流 在Java中,流分为3类,即字节流、字符流、对象流。 1. 字节流 以字节为导向的stream,表示以字节为单位从stream中读取或往stream中写入信息。Java中处理字节流的类都是从InputStream和OutputStream派生出来的一系列类。 7.1.1 I/O流 2. 字符流 以Unicode字符为导向的流,表示以Unicode字符为单位从stream中读取或往stream中写入信息。操作这类流的类都是从Reader和Writer派生出的一系列类,这类流以16位的Unicode码表示的字符为基本处理单位。 7.1.1 I/O流 关于对象流,将在7.3节专门讲述。 除了上述三种输入输出流外,Java还提供了文件操作的类,它们是File和RandomAccessFile。 File:文件和目录路径名的抽象表示形式。 RandomAccessFile:此类的实例支持对随机存取文件的读取和写入。 7.1.2 InputStream类常用接口 该类是一个抽象类,其包含的方法如下。 abstract int read():读取一个字节数据,并返回读到的数据。如果返回-1,表示读到了输入流的末尾。 int read(byte[] b):将数据读入一个字节数组,同时返回实际读取的字节数。如果返回-1,表示读到了输入流的末尾。 int read(byte[] b, int off, int len):将数据读入一个字节数组,同时返回实际读取的字节数。如果返回-1,表示读到了输入流的末尾。off指定在数组b中存放数据的起始偏移位置;len指定读取的最大字节数。 7.1.2 InputStream类常用接口 【例7.1】下面是一个具体字节流输入的应用举例(假设在磁盘上的D盘的Javacode文件夹里有test.txt文件),程序如下: Import java.io.*; class test { public static void main(String []args) throws Exception { FileInputStream fis =new FileInputStream (d:\\Javacode\\test.txt); byte[]buf=new byte[100]; int len=fis.read(buf); fis.close(); System.out.println(new String(buf)); } } 运行结果如图7-7所示。 7.1.2 InputStream类常用接口 图7-7 运行结果(例7.1) 7.1.3 OutputStream类常用接口 OutputStream类中的常用方法如下。 abstract void write(int b):往输出流中写入一个字节。 void write(byte[] b):往输出流中写入数组b中的所有字节。 void write(byte[] b, int off, int len):往输出流中写入数组b中从偏移量off开始的len个字节的数据。其中第一个方法的int型的参数对应要写入的字节,后两个方法的参数与Input
文档评论(0)