【职坐标】java IO流前传——File文件类
来源:互联网 发布:淘宝水印制作教程 编辑:程序博客网 时间:2024/06/13 13:41
Java IO流之File类
一、 File类的用途
a) 该类的出现是java程序对文件系统的中的文件以及文件夹进行对象的封装。为了能够在代码中对文件或文件夹进行操作
二、 如何创建一个file类
a) 构造方法:File(String fileName)
i. 将一个字符串路径(相对或者绝对)封装成 File对象,该路径是可存在的,也可以是不存在
1. 绝对路径(创建file对象常用)
a) 绝对路径就是你的文件或目录在硬盘上真正的路径(从盘符根目录到文件的路径)
2. 相对路径
a) 相对与某个基准目录的路径(javaSE中为基准为工程所在目录)(工程所在目录到文件的路径)
3. 跨平台
a) 由于java是一门跨平台的语言,不同的操作系统表示路径的方法不同。("/" 表示 linux和UNIX 中的根目录,"\\" 表示 Windows 中的路径名。)
b) File类中特殊字段:separator;
i. 作用:跨平台的目录分隔符
三、 File类中的常用方法
a) 创建文件或文件夹
1. createNewFile();创建文件, 如果被创建的文件已经存在,则不创建
2. mkdir();创建文件夹
3. mkdirs():创建多级文件夹
b) 删除操作
1. Delete() 可用于删除文件或者文件夹;(注意:对于文件夹只能删除不带内容的空文件夹。对于带有内容的文件夹,不可以直接删除,必须要从里往外删除.)
2. deleteOnExit() 删除动作交给系统完成.无论是否反生异常,系统在退出时执行删除动作,
c) 判断操作
1. canWrite() 判断文件是否可读
2. canRead() 判断文件是否可写
3. exists() 判断文件是否存在
a) 创建文件对象后只要不是对文件对象进行创建操作,都需要事先使用此方法来判断文件是否存在
4. isFile() 判断 File对象中封装的是否是文件.
5. isDirectory()判断 File对象中封装的是否是文件夹
d) 其他常用操作
1. getName() 获取文件或文件夹的名称
2. getPath();获取在创建file对象时所使用的路径(无论是绝对路径还是相对路径)
3. getAbsolutePath();获取文件的绝对路径
4. getParent():获取 File对象封装文件或者文件夹的父目录,,注意:如果封装的是相对路径,那么返回的是null.
5. String[] list():获取指定目录下当前的文件以及文件夹名称,
6. String[]list(Filename filter):可以根据指定的过滤器,过滤后的文件及文件夹名称,
7. File[] listFiles():获取指定目录下的文件以及文件夹对象,
8. renameTo(File) 重命名
四、 File类的常用操作
a) 使用递归的方式敢不敢还能,列出指定目录下的文件以及文件夹中的文件(子文件).
b) 删除一个带内容的目录,,原理: 从里往外删除,所以需要使用递归完成
c) 递归简介
1. 概念: 其实就是在使用一个功能过程中, 又对该功能有需求,,就出现了函数自身调用自身
2. 注意:
a) 一定要有结束递归的限定条件,否则内存溢出(在递归中要有不调用自身函数的条件分支)
b) 使用递归时,调用次数不要过多,否则也会出现内存溢出。
- 【职坐标】java IO流前传——File文件类
- JavaIO —— java.io.File类
- Java IO——File类
- Java IO系统——File类
- JAVA:IO流——File类
- java——流(Stream)、文件(File)和IO
- Java文件操作——IO流 文件编码及File类使用
- java.io.File类各种文件操作
- java.io.File类各种文件操作
- java.io.File类各种文件操作
- Java IO流-文件操作File 类
- JAVA IO之File文件操作类
- Java IO总结(一) File文件类
- Java IO——IO和File
- JAVA—IO—File
- Java基础——IO流File类-Properties-PrinWriter-合并流-切割文件
- java.io.File类基本使用——遍历某路径的所有文件夹及文件
- Java IO操作——文件操作类File的使用
- httpclient的get请求出错原因
- java学习之路 之 面向对象编程-面向对象特征之一(封装和隐藏)级类的成员之三(构造器、构造方法)
- cocoaPods安装遇到的问题以及解决方案
- SBT配置
- 树形ListView
- 【职坐标】java IO流前传——File文件类
- 开源GIS_GeoServer前瞻
- 长整型和整形数据运算的不同
- MyEclipse如何全局搜索
- 面向对象(二)
- androidstudio使用大全
- C#中字符分隔的几种方式
- 从一个TCP抓包的例子看流量整形-概述
- (15)HTML标签详解之<p>