ImageVerifierCode 换一换
格式:PPT , 页数:51 ,大小:425.50KB ,
资源ID:2642822      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2642822.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第8章输入输出流与文件操作.ppt)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第8章输入输出流与文件操作.ppt

1、第八章第八章 输入输出流与文件操作输入输出流与文件操作目录输入输出流的分类输入输出流的分类输入输出流的分类输入输出流的分类目录和文件管理目录和文件管理目录和文件管理目录和文件管理文件的随机访问文件的随机访问文件的随机访问文件的随机访问其他常用的流其他常用的流其他常用的流其他常用的流字符流字符流字符流字符流字节流字节流字节流字节流输入输出流的分类输入输出流的分类 Java流的概念Java使用流(stream)来执行输入输出(I/O)的功能,流是一种数据的源头和目的之间的通信途径。标准输入输出Java系统事先定义好两个流对象,分别与系统的标准输入和标准输出相联系,它们是System.in和Syst

2、em.outSystem是Java中一个功能很强大的类,利用它可以获得很多Java运行时的系统信息。3132输出流输出流(程序写出数据程序写出数据)输入流输入流(程序读入数据程序读入数据)Java中根据流操作的种类可分为:字节流和字符流。根据流的方向,流可分为两类:输入流和输出流。Java流类体系结构流类体系结构1Java流类体系结构流类体系结构2Java流类体系结构流类体系结构3Java流类体系结构流类体系结构4Java流的概念输入输出流的分类输入输出流的分类目录和文件管理目录和文件管理目录和文件管理目录和文件管理 32文件名的处理文件名的处理 31FileFile类类 文件或目录的生成文件

3、或目录的生成 文件属性测试文件属性测试 普通文件信息和工具普通文件信息和工具 目录操作目录操作 publicFile(Stringpath):如果path是实际存在的路径,则该File对象表示的是目录;如果path是文件名,则该File对象表示的是文件。publicFile(Stringpath,Stringname):path是路径名,name是文件名(不可为空)。publicFile(Filedir,Stringname):dir是路径名,name是文件名。StringgetName():得到一个文件的名称(不包括路径)。StringgetPath():得到一个文件的路径名。Stringg

4、etAbsolutePath():得到一个文件的绝对路径名。StringgetParent():得到一个文件的上一级目录名。StringrenameTo(FilenewName):将当前文件名更名为给定文件的完整路径。【例8.2】booleanexists():测试当前File对象所指示的文件或目录是否存在,若存在,返回True。booleancreateNewFile():创建当前文件。booleancanWrite():测试当前文件是否可写。booleancanRead():测试当前文件是否可读。booleanisFile():测试当前文件是否是文件(不是目录)。booleanisDire

5、ctory():测试当前文件是否是目录,若为目录则返回True。【例8.3】longlastModified():得到文件最近一次修改的时间。longlength():得到文件的长度,以字节为单位,若不存在,返回0。booleandelete():删除File对象代表的文件或目录,目录需为空。删除成功,返回True。booleanmkdir():生成一个由该对象指定的路径(新目录),若成功,返回True。booleanmkdirs():生成一个新的目录,包含子目录。若成功,返回true。booleanrenameTo(FilenewName):将当前File对象所代表的路径名改为newName

6、所代表的路径名。若成功,返回true。Stringlist():列出当前目录下的文件。【例8.4】FileFile类的应用类的应用 【例8.5】【例8.6】字节流字节流字节流字节流 缓冲区流缓冲区流BufferedInputStream和BufferedOutputStream 33顺序读/写文件(FileInputStream与FileOutputStream)31ByteArrayInputStream和ByteArrayOutputStream 32 在使用在使用FileInputStream类时,若关联的目录或者文件不存在,类时,若关联的目录或者文件不存在,Java会抛出一个会抛出一个

7、IOException异常。程序可以使用异常。程序可以使用try-catch块检测和处块检测和处理捕捉到的异常。理捕捉到的异常。为了把一个文件输入流对象与一个文件关联起来,可以使用下列为了把一个文件输入流对象与一个文件关联起来,可以使用下列的代码段来处理的代码段来处理Java产生的产生的IOEception异常。异常。例如:例如:try FileInputStream fis=new FileInputStream(java.txt);catch(IOException e)System.out.println(File Exception:+e);注:注:字节流字节流字节流字节流 Write

8、rWriter和和和和ReaderReader 以字符流方式向文件写入或从文件中读取数据,可以使用以字符流方式向文件写入或从文件中读取数据,可以使用Writer和和Reader类及其子类。类及其子类。Writer和和Reader类类都都是是抽抽象象类类,不不能能建建立立它它们们的的对对象象,所所以以只只能能通通过过它它们们子子类类对对象象对对文文件件进进行行操操作作。常常用用的的Writer类类的的子子类类包包括括FileWriter类类和和BufferedWriter类。类。FileWriter类构造方法如下:类构造方法如下:FileWriter(String fileName):参数:参数

9、fileName表示带路径的磁盘文件名。表示带路径的磁盘文件名。FileWriter(File file):参数:参数file表示为磁盘文件所建立的表示为磁盘文件所建立的File对象名。对象名。注:使用注:使用FileWriter进行文件操作时,为了减少磁盘读写次数,常常进行文件操作时,为了减少磁盘读写次数,常常使用具有缓冲功能的使用具有缓冲功能的BufferedWriter类。类。文件的随机访问文件的随机访问文件的随机访问文件的随机访问 31在java中,类RandomAccessFile 提供了随机访问文件的方法RandomAccessFile(Filefile,Stringmode):构

10、造一个随机访问文件流,file为被访问的文件对象,mode是用来指定存取的模式,mode可以为r(读)、w(写)或rw(读写)。RandomAccessFile(Stringname,Stringmode):构造一个随机访问文件流,以便访问由字符串name指定名字的文件,mode参数使用同上32RandomAccessFile类提供用来读取某种基本数据类型的数据或字符串的方法 boolean readBoolean()byte readByte()char readChar()double readDouble()float readFloat()int readInt()long readL

11、ong()short readShort()String readLine()33RandomAccessFile类提供用来向文件中写入某种基本类型的数据或字符串的方法voidwriteByte(byteb)voidwriteBytes(Strings)voidwriteChar(charc)voidwriteChars(Strings)voidwriteDouble(doubled)voidwriteFloat(floatf)voidwriteInt(inti)voidwriteLong(longl)voidwriteShort(shorts)34和目前文件位置有关的方法 voidseek(

12、longpos):将文件指针移到pos(不可为负)的位置,相对于文件初始位置值(初始值为0)。longgetFilePointer():得到目前文件指针的位置(相对于文件初始位置)。longlength():得到文件的长度。intskipBytes(intn):使文件指针向前移动指定的n个字节 使用使用DataOutputStream类向文件中写入各种类型数据的操作步骤:类向文件中写入各种类型数据的操作步骤:1 1、为磁盘文件建立、为磁盘文件建立File类对象;类对象;2 2、为该、为该File对象建立对象建立FileOutputStream类流对象,建立其与磁盘文件的类流对象,建立其与磁盘文

13、件的连接;连接;3 3、为该、为该FileOutputStream类对象建立类对象建立DataOutputStream类对象,利用类对象,利用DataOutputStream类的类的writeInt(),writeFloat(),writeDouble(),writeBoolean()等方法分别向文件中写入整型、单精度型、双精度型、布尔型等方法分别向文件中写入整型、单精度型、双精度型、布尔型等数据;等数据;4 4、写入操作完成后,利用、写入操作完成后,利用close()close()方法将流关闭,断开与磁盘文件的联方法将流关闭,断开与磁盘文件的联系。系。DataOutputStream流类流类

14、importjava.io.*;publicclassFilepublicstaticvoidmain(Stringargs)throwsIOExceptionintch;Filefile1=newFile(c:jdk1.3exampledataFile.txt);Filefile2=newFile(c:jdk1.3exampleoutFile.txt);tryFileInputStreamfin=newFileInputStream(file1);DataInputStreamdin=newDataInputStream(fin);inti=din.readInt();floatf=din.

15、readFloat();booleanb=din.readBoolean();din.close();从磁盘文件读取各类数据从磁盘文件读取各类数据【例8.16】FileOutputStreamfout=newFileOutputStream(file2);DataOutputStreamdout=newDataOutputStream(fout);dout.writeInt(i);dout.writeFloat(f);dout.writeBoolean(b);dout.close();System.out.println(整数:+i);System.out.println(浮点数:+f);Sy

16、stem.out.println(布尔量:+b);catch(FileNotFoundExceptione)System.out.println(e);catch(IOExceptione)System.out.println(e);从磁盘文件读取各类数据从磁盘文件读取各类数据 import java.io.*;public class File public static void main(String args)int ch;InputStreamReader iin=new InputStreamReader(System.in);BufferedReader bin=new BufferedReader(iin);File file1=new File(c:jdk1.3exampledataFile.txt);try FileOutputStream fout=new FileOutputStream(file1);DataOutputStream dout=new DataOutputStream(fout);System.out.println(输入整数输入整数);int

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1