File、FileFilter、递归初步
java.io.File
文件和目录 路径名的抽象表示形式
文件:File 存储数据的
目录:Directory 文件夹 用来存储文件
路径:Path 定位具有平台无关性 在任意平台都可以使用
File类的静态常量
static String pathSeparator 与系统有关的路径分隔符 //打印 ;
static String separator 与系统有关的名称分隔符 //打印 \
uri 统一资源标识符
包含url
mailto:785243732@qq.com
thrunder:sss
ed2k:
url 统一资源定位符
http:\\www.baidu.com
File类的构造方法
绝对路径
带盘符的路径就是绝对路径 唯一性
相对路径
具备一个参照点 参照点(父路径)是唯一的 子路径无限制
File(String pathname) 传入一个String类型路径,可以是路径,也可以是文件夹,但是要注意,路径可以不存在
File(String parrent, String child) 传入字符串一个父路径,一个字符串子路经
File(File parent, String child) 传入File类型的父路径,字符串类型的子路经
File类的创建方法
boolean createNewFile() IOException
创建文件 有了就不创建
返回值是boolean类型
创建成功返回true 失败返回false
创建的位置在构造方法中给出
能创建文件 不能创建文件夹(直接返回false)
boolean mkdir()
创建文件夹 有了就不创建
只能创建文件夹 不可以创建文件
只能创建单级文件夹 不可以创建多级
boolean mkdirs() 创建多级文件夹
File类的删除方法
boolean delete()
删除文件或文件夹 删除的位置构造方法中给出
删除文件时,无论文件是否有数据都会被删除,并且不进回收站
删除时,如果是多级目录不能删除,只能删除单机目录
File类的判断方法
boolean exists()
判断路径是否存在
文件和文件夹都可以进行判断
boolean isFile()
判断是否为文件
boolean isDirectory()
判断是否为文件夹
File类的获取方法
String getAbsolutePath()
File getAbsoluteFile()
返回绝对路径, 第一个返回的是字符串路径
第二个返回的是File对象 推荐使用第二个
String getName()
返回文件或文件夹的名字(不带路径)
String getPath()
File类型转换为一个字符串路径
构造方法中传递是什么路径 转化成的就是什么样路径
String getParent()
File getParentFile()
获取父路径
long length()
获取文件的字节数
注意 文件夹没有字节数的概念 不能获取文件夹(获取文件夹时结果不能代表什么)
String list()
获取当前文件夹下所有文件名 包含隐藏文件
File[] listFiles()
获取当前文件夹下所有文件的file对象
static File[] listRoots()
列出可用的文件系统根盘符
FileFilter 文件过滤器
File[] listFiles(FileFileter fileter)
获取过滤之后的所有文件
里面首先取出所有的文件名,然后遍厉封装为File对象,调用FileFilter的accept方法对File对象进行逐一判断
如果满足将其加入集合中,然后将集合变为数组
递归
方法调用方法本身
注意事项:
A:递归一定要有出口
B:递归的次数不能过多,否则会内存溢出
C:构造方法不能递归
递归的时候,第一个执行的方法最后出栈
File、FileFilter、递归初步的更多相关文章
- day23<File类递归练习>
File类递归练习(统计该文件夹大小) File类递归练习(删除该文件夹) File类递归练习(拷贝) File类递归练习(按层级打印) 递归练习(斐波那契数列) 递归练习(1000的阶乘所有零和尾部 ...
- [Day22]IO(File、递归)
1.File 1.1 IO概述 (1)当需要把内存中的数据存储到持久化设备上的这个动作称为输出(写)Output操作 (2)当把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作 1. ...
- 22_IO_第22天(File、递归)_讲义
今日内容介绍 1.File 2.递归 xmind:下载地址: 链接:https://pan.baidu.com/s/1Eaj9yP5i0x4PiJsZA4StQg 密码:845a 01IO技术概述 * ...
- Java之File与递归
File类的使用和递归思想 File类 概述 文件: 存储数据 文件夹: 管理文件与文件夹 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径 ...
- 13、IO (File、递归)
File File类的概述和作用 * A:File类的概述和作用 * a: File的概念 * File类是文件和目录路径名的抽象表示形式 * Java中把文件或者目录(文件夹)都封装成File对象 ...
- java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量
package com.swift.kuozhan; import java.io.File; import java.io.FileFilter; /*使用文件过滤器筛选将指定文件夹下的小于200K ...
- IO流----File,递归,字节流,字符流
要把数据持久化存储,就需要把内存中的数据存储到内存以外的其他持久化设备(硬盘.光盘.U盘等)上. 当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作. 当把持久设备上的数据读 ...
- IO(File、递归)
第1章 File 1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下 ...
- java基础(22):File、递归
1. File 1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下次程序 ...
随机推荐
- PagedLOD模型对象选择关键技术点
DatabaseCacheReadCallback这个类继承ReadCallback,在相交的测试中,场景可能有PagedLOD,而计算相交过程中,PagedLOD不是精度最高的节点,这样计算的就不准 ...
- 2019.7.3模拟 光影交错(穷举+概率dp)
题目大意: 每一轮有pl的概率得到正面的牌,pd的概率得到负面的牌,1-pl-pd的概率得到无属性牌. 每一轮过后,都有p的概率结束游戏,1-p的概率开始下一轮. 问期望有多少轮后正面的牌数严格大于负 ...
- bzoj1016题解
[解题思路] Kruskal的拓展. 可以先对边排序,进行一次Kruskal,判断是否可行,并计算出每种权值的边需要多少条. 然后暴力统计每种权值可行的方案数,根据乘法原理乘起来即可.复杂度o(210 ...
- 01二重退背包+组合数学——cf1111d
退背包进阶,还是挺难想的 /* dp1[k]表示取到体积k的方案数 dp2[i][j][k]表示左侧必选ij的情况下,取到体积k的方案数 dp2[i][j][k]=dp1[k]-左侧不选ij的方案数 ...
- java 直接调用micorosoft office (2003-2007和2010版本)中excel中计算函数
主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx 读取excel和MySQL相关: java的poi技 ...
- ionic-CSS:ionic checkbox(复选框)
ylbtech-ionic-CSS:ionic checkbox(复选框) 1.返回顶部 1. ionic checkbox(复选框) ionic 里面的 Checkbox 和普通的 Checkbox ...
- shell设置时间递减脚本
经常要用shell来做时间的定时任务,尤其是用sqoop脚本拉取数据的时候,那么假如当你要导入数据是残缺的时候呢,我写了一个能自定义时间并逐条递减的程序 #!/bin/bash . /etc/pr ...
- HDU-6441-Find Integer-费马大定理+奇偶数列法则
感觉这样看的比较清楚. 题意: 给出n和a,判断能否求出a^n+b^n=c^n中b和c的值,若可以输出b和c,否则则输出-1 -1. 思路: 数据给的比较大,但是题目很简单,套两个公式:费马打定理和奇 ...
- leetcode题解(持续更新)
leetcode题解 1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但 ...
- pip修改官方源为豆瓣源
参考地址: https://www.jianshu.com/p/10a23d6a93c6 1.临时修改 pip install pythonModuleName -i https://pypi.dou ...