欢迎来到天天文库
浏览记录
ID:49376537
大小:130.50 KB
页数:32页
时间:2020-02-05
《Java10(IO).ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、输入输出编程本章内容输入输出概述File类与RandomAccessFile类流的体系结构及分类InputStream与OutputStreamReader与WriterDecorator(装饰)设计模式字符编码对象的序列化IO概述一个程序在运行时通常要和外部设备交互,即从外部设备获取信息或向外部设备发送信息,这就是所谓的输入/输出(I/O)操作。在Java语言中,输入/输出都是通过流(Stream)来完成的,java.io包提供了相应的类来完成这些操作。流就是指在计算机与输入/输出之间流动的数据序列。序列中的数据既可以是二进制数据,
2、也可以是其他符合某种格式规定的特定数据一个流是字节的源或目的。次序是有意义的File类一个File类的对象,表示了磁盘上的文件或目录。File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作。不能通过File类的对象存取文件的内容创建一个新的File对象File类中提供了三种构造方法可用来生成一个文件或目录。publicFile(Stirngpath);publicFile(Stringpath,Stringname);publicFile(Filedir,Stringname);如:FilemyDir=newFile("c:
3、mydir");FilemyFile=newFile("c:/mydir","myFile.txt");FilemyFile2=newFile(myDir,"myFile2.txt");注意:Java能正确处理UNIX和Windows/DOS约定路径分隔符。如果在Windows版本的Java下用斜线(/),路径处理依然正确。记住,如果你用Windows/DOS使用反斜线(\)的约定,你需要在字符串内使用它的转义序列(\\)。Java约定是用UNIX和URL风格的斜线来作路径分隔符。File类中的方法文件名的处理StringgetNa
4、me()//得到一个文件的名称(不包括路径)StringgetPath()//得到一个文件的路径名StringgetAbsolutePath()//得到一个文件的绝对路径名StringgetParent()//得到一个文件的上一级目录名booleanrenameTo(FilenewName)//将当前文件名更名为给定文件的完整路径文件属性测试booleanexists()//测试当前File对象所指示的文件是否存在booleancanWrite()//测试当前文件是否可写booleancanRead()//测试当前文件是否可读bool
5、eanisFile()//测试当前文件是否是文件booleanisDirectory()//测试当前文件是否是目录booleanisAbsolute()//测试文件是否使用绝对路径创建booleanexists()//测试文件是否存在File类中的方法通用文件信息和工具longlastModified()//得到文件最近一次修改的时间。longlength()//得到文件的长度,以字节为单位booleandelete()//删除当前文件voiddeleteOnExit()//当程序退出时删除文件目录工具booleanmkdir()//
6、根据当前对象生成一个由该对象指定的路径booleanmkdirs()//以递归的方式创建路径String[]list()//列出当前目录下的文件File[]listFiles()//以文件数组的形式列出当前目录下的所有文件流-Stream概述流是在输入和输出之间的数据序列。每个流都有一个源和一个目的,流中的数据的存取都是严格按顺序的。流中的数据可以是原始的二进制数据,也可以是经过编码处理过的符合某种格式的特定类型的数据,例如:字符流、数字流等。对于不同的数据类型使用不同的流类来抽象,而流提供的方法也不一样。不同的流类是有联系的,构成一
7、个非常好的类体系结构,其中使用了Decorator设计模式。流类总共分为两大类,字节流和字符流。根据数据类型的不同和输入输出的不同,有分为不同的流类。流的分类字节流和字符流最基本的两种流分类,按照流的最基本单位是字节还是字符来分。字节流一般以Stream结尾,字符流一般以Reader结尾输入流和输出流相对于程序来说,向程序输入成为输入流,否则称为输出流。节点流和过滤流流的一个端点和一个固定数据源或者目的相连,称为结点流,如:System.in,FileInputStream,过滤流是使用一个已经存在的输入流或输出流连接创建的。缓冲流与
8、非缓冲流缓冲流是节点流的一种,是在一个流的基础上提供了一种缓冲的机制,用于提高流读写的效率,一般在类名中含有Buffered的都是缓冲流。过滤流示例java.io包中InputStream的类层次InputStreamS
此文档下载收益归作者所有