首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 求java按文件名来模糊搜索文件的代码 [已结贴,结贴人:f250303748]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • f250303748
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 揭贴率:
    发表于:2008-08-22 09:57:29 楼主
    我写了一段搜索文件的代码。
    File file = new File("d:\\Test");

    File[] tempFile = file.listFiles();
    for(int i = 0; i < tempFile.length; i++){
    if(tempFile[i].getName().startsWith("前缀")){
    if(tempFile[i].getName().endsWith("后缀") ){
    System.out.println(tempFile[i].getName());
    }
    }
    }
    但是这个只能根据前缀和后缀来搜索,不能根据文件名模糊搜索。
    比如有1-fan.rar,2-fan.rar,3-fff.rar3个文件,输入fan就搜索到1-fan.rar,2-fan.rar。
    50  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lemon520
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 09:59:201楼 得分:0
    java.io.FileFilter
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • f250303748
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:03:092楼 得分:0
    我想根据文件名来模糊搜索文件,就像SQL的LIKE。各位帮帮忙!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ProvidenceZY
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 2

    发表于:2008-08-22 10:03:243楼 得分:25
    读入文件名,每个文件名都为一个String,JDK5开始有了contain这个方法,直接用来判别是否包含某些字符串,完全满足你的要求,当然这是简单的搜索,要是文件数量特别多那一个个的判别就很慢,最好重新设计一个算法了!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ProvidenceZY
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 2

    发表于:2008-08-22 10:04:454楼 得分:25
    比如
    Java code
    String s="1-fan.rar"; if(s.contain("fan")){//判断文件名是否包含fan }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • oyl822
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:06:275楼 得分:0
    用FileNameFilter解决啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • f250303748
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:09:536楼 得分:0
    汗!没注意到这个方法,谢谢各位了。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lemon520
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:26:127楼 得分:0
    test
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lliiqiang
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-06 17:02:058楼 得分:0
    可是实际上系统的查找文件要复杂得多,射击到通配符。例如:a*qw?23.tx*文件用java如何搜索?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lliiqiang
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-06 17:03:269楼 得分:0
    java是跨平台语言。它最终应该可以调用系统的模糊搜索功能的。如果能够调用系统的这种功能就好了
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved