文件操作

文件搜索与IO操作详解

I.文件夹搜索功能的实现 文件名搜索
1.文件对象定义
2.接受用户输入
3.全盘搜索匹配的文件夹以及文件 匹配成功者放到list集合中
重要方法 File.listRoots();//获取电脑所有盘符 c d e ...
root[i].listFiles() 文件目录下所有文件(夹)
f1.getAbsolutePath(); 文件的绝对路径

public void findFile(File file,String content) {//子文件搜索 content 为用户输入查找内容
if(file.getName().toString().indexOf(content)>=0)//说明匹配的字符串索引位置)
{
setValues(file);
if(file.listFiles()!=null)
{
File[] f=file.listFiles();
for(File f1:f)
{
if(f1.isDirectory())//递归寻找子文件
{
String dir=f1.getAbsolutePath();
File f2=new File(dir);
findFile(f2, content);
}
}
}
}
}
II.apache common io 对于文件IO的操作
导入common-io jar 包
FileUtils 实现文件的读写 复制 删除 移动
FileFilterUtils 实现指定文件的过滤功能
过滤器 功能
TrueFileFilter 不进行过滤
FalseFileFilter 过滤所有文件及目录

FileFileFilter 仅接受文件
DirectoryFilter 仅接受目录

PrefixFileFilter 基于前缀(不带路径的文件名)
SuffixFileFilter 基于后缀(不带路径的文件名)
NameFileFilter 基于文件名称(不带路径的文件名)
WildcardFileFilter 基于通配符(不带路径的文件名)
RegexFileFilter 基于正则表达式
AgeFileFilter 基于最后修改时间
SizeFileFilter 基于文件尺寸
MagicNumberFileFileter 基于Magic Number
EmptyFileFilter 基于文件或目录是否为空
HiddenFileFilter 基于文件或目录是否隐藏

CanReadFileFilter 基于是否可读
CanWriteFileFilter 基于是否可写入

DelegateFileFilter 将普通的FileFilter和FilenameFilter包装成IOFileFilter


复合过滤器 功能
AndFileFilter 基于AND逻辑运算
OrFileFilter 基于OR逻辑运算
NotFileFilter 基于NOT逻辑运算

转载于:https://www.cnblogs.com/hlly/p/4104237.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值