Java语言程序设计第八章.ppt
《Java语言程序设计第八章.ppt》由会员分享,可在线阅读,更多相关《Java语言程序设计第八章.ppt(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java面向对象程序设计面向对象程序设计第第8章章Java的的I/O操作操作1本章主要内容本章主要内容lFile类类l面向字节的面向字节的I/O操作操作FileInputStream、FileOutputStreamBufferedInputStream、BufferedOutputStreaml面向字符的面向字符的I/O操作操作FileReader、FileWriterBufferedReader、BufferedWriterl对象的序列化对象的序列化2File类类l什么是文件?什么是文件?文件可认为是相关记录或放在一起的数据的集合。文件可认为是相关记录或放在一起的数据的集合。在文件系统中,
2、文件夹和文件从本质上没有区别,在文件系统中,文件夹和文件从本质上没有区别,文件夹只是一种特殊的文件,里面保存了一组文件文件夹只是一种特殊的文件,里面保存了一组文件的名字而已。的名字而已。l文件一般存储在哪里?文件一般存储在哪里?l可以通过可以通过java.io.File类对文件或者文件夹进行一些操作,类对文件或者文件夹进行一些操作,如修改属性、删除文件、创建文件夹等。如修改属性、删除文件、创建文件夹等。3File类类l构造方法构造方法File(Fileparent,Stringchild):根据根据parent抽象路径名抽象路径名和和child路径名字符串创建一个新路径名字符串创建一个新Fil
3、e实例。实例。File(Stringpathname):通过将给定路径名字符串转换成通过将给定路径名字符串转换成抽象路径名来创建一个新抽象路径名来创建一个新File实例。实例。File(Stringparent,Stringchild):根据根据parent路径名字路径名字符串和符串和child路径名字符串创建一个新路径名字符串创建一个新File实例。实例。l常用实例方法常用实例方法exists()、createNewFile()、delete()、getAbsolutePath()、canWrite()、isDirectory()、isFile()、length()、lastModified
4、()、listFiles()、mkdir()演示File类4流的概念流的概念l流是指一连串流动的字符流是指一连串流动的字符,是以先进先出方式是以先进先出方式发送信息的通道。发送信息的通道。InputStreamOutputStream来自数据源的数据流来自数据源的数据流流向目的地的数据流流向目的地的数据流AECDBF5流的分类流的分类l字节流字节流InputStreamOutputStreaml字符流字符流ReaderWriter6用用FileInputStream读文件读文件l引入相关的类引入相关的类l构造一个文件输入流对象构造一个文件输入流对象l利用文件输入流类的方法读取文件的数据利用文件
5、输入流类的方法读取文件的数据l关闭文件输入流对象关闭文件输入流对象演示FileInputStream类importjava.io.*;publicclassTestFileInputStreampublicstaticvoidmain(Stringargs)throwsFileNotFoundException,IOException FileInputStreamfis=null;tryfis=newFileInputStream(newFile(d:/java/a.txt);System.out.println(fis.available();intch;while(ch=fis.read
6、()!=-1)System.out.println(char)ch);finallyfis.close();7用用FileOutputStream写文件写文件l引入相关的类引入相关的类l构造一个文件输出流对象构造一个文件输出流对象l利用文件输出流类的方法写文件利用文件输出流类的方法写文件l关闭文件输出流对象关闭文件输出流对象演示FileOutputStream类importjava.io.*;publicclassTestFileOutputStreampublicstaticvoidmain(Stringargs)throwsFileNotFoundException,IOException
7、 FileOutputStreamfos=null;Stringstr=你好!你好!rnJava;bytebytes=str.getBytes();tryfos=newFileOutputStream(newFile(d:/java/a.txt);for(inti=0;ibytes.length;i+)fos.write(bytesi);finallyfos.close();voidwrite(byteb):将将b.length个字节写入此输出流。个字节写入此输出流。voidwrite(byteb,intoff,intlen):将指定将指定byte数组中从偏数组中从偏移量移量off开始的开始的
8、len个字节写入此输出流。个字节写入此输出流。voidwrite(intb):将指定将指定byte写入此输出流。写入此输出流。8使用使用FileInputStream和和FileOutputStream实现文件复制实现文件复制Stringfrom=d:/java/in.dat;Stringto=d:/java/out.dat;FileInputStreamin=null;FileOutputStreamout=null;tryin=newFileInputStream(from);out=newFileOutputStream(to);inti=0;while(i=in.read()!=-1)
9、out.write(i);finallyin.close();out.close();演示使用字节流文件复制9使用字节流的使用字节流的FilterlBufferedOutputStream与与BufferedInputStream是完全是完全相对应的,对数据流提供缓冲技术。相对应的,对数据流提供缓冲技术。l使用使用BufferedOutputStream与与BufferedInputStream来来包装的字节流,当每次向流写入或输出时,不必每次包装的字节流,当每次向流写入或输出时,不必每次都访问极慢的外部设备。都访问极慢的外部设备。演示使用字节流的Filter实现文件复制Stringfrom=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言程序设计 第八
限制150内