java如何实现搜索功能。比如,输入txt就能搜索出这个文件夹内所有txt格式的文件。请给完整代码。
2个回答
2014-08-03 · 知道合伙人数码行家
关注
展开全部
import java.io.*;
public class FileDemo{
public static void main(String[] args)throws Exception{
//第一个参数是文件路径,第二个参数是要搜索的文件扩展名
getFile("D:\\JavaDemo",".txt");
}
private static void getFile(String pathName, final String endsWith)throws Exception{
File file = new File(pathName);
if(!file.exists())
throw new RuntimeException("文件不存在,你检索个P呀。");
file.listFiles(new FileFilter(){
public boolean accept(File file){
if(file.getName().endsWith(endsWith)){
System.out.println(file.getName());
return true;
}else
return false;
}
});
}
}
展开全部
可以使用FileFilter过滤
import java.io.File;
import java.io.FileFilter;
public class Test40 {
public void myListFiles(String dir) {
File directory = new File(dir);
if (!directory.isDirectory()) {
System.out.println("No directory provided");
return;
}
File[] files = directory.listFiles(filefilter);
for (File f : files) {
System.out.println(f.getName());
}
}
// create a FileFilter and override its accept-method
FileFilter filefilter = new FileFilter() {
public boolean accept(File file) {
// if the file extension is .txt return true, else false
if (file.getName().endsWith(".txt")) {
return true;
}
return false;
}
};
public static void main(String[] args) {
Test40 fileutil = new Test40();
fileutil.myListFiles("./src");
}
}
import java.io.File;
import java.io.FileFilter;
public class Test40 {
public void myListFiles(String dir) {
File directory = new File(dir);
if (!directory.isDirectory()) {
System.out.println("No directory provided");
return;
}
File[] files = directory.listFiles(filefilter);
for (File f : files) {
System.out.println(f.getName());
}
}
// create a FileFilter and override its accept-method
FileFilter filefilter = new FileFilter() {
public boolean accept(File file) {
// if the file extension is .txt return true, else false
if (file.getName().endsWith(".txt")) {
return true;
}
return false;
}
};
public static void main(String[] args) {
Test40 fileutil = new Test40();
fileutil.myListFiles("./src");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询