用java写一段程序扫描文件夹下所有后缀为.txt的文件代码

 我来答
问题终结机
2014-09-10 · 超过12用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:19.8万
展开全部
import java.io.File;
import java.io.FilenameFilter;

public class FileNameSelector implements FilenameFilter//FilenameFilter接口实现文件名过滤器功能;
{
String extension = ".";
public FileNameSelector(String fileExtensionNoDot)
{
extension += fileExtensionNoDot;
}
@Override
public boolean accept(File dir, String name)
{
return name.endsWith(extension);
}
public static void main(String[] args)
{
File directory = new File("D:\\java test");
//列出所有文件
/*File[] files = directory.listFiles();
System.out.println("\n目录"+directory.getName()+"下的所有文件");
for(File file : files)
{
System.out.print(" " + file.getName());
}*/
//列出所有.txt文件
File[] txtFiles = directory.listFiles(new FileNameSelector("txt"));
System.out.println("\n目录"+directory.getName()+"下的.txt文件");
for(File file : txtFiles)//枚举txtFiles在file中。
{
System.out.print(" " + file.getName());
}

}
}
Ishii__Momoka
推荐于2017-05-23 · 超过21用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:26.1万
展开全部
import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class Jiaogu {

/**
* @param args
*/
public static void main(String[] args) {
Jiaogu f = new Jiaogu();
List<File> ll = f.getFiles(new File("d:\\testfiledir"),"txt");
for (File ff : ll) {
System.out.println(ff.getPath());
}
}

public List<File> getFiles(File fileDir, String fileType) {
List<File> lfile = new ArrayList<File>();
File[] fs = fileDir.listFiles();
for (File f : fs) {
if (f.isFile()) {
if (fileType
.equals(f.getName().substring(
f.getName().lastIndexOf(".") + 1,
f.getName().length())))
lfile.add(f);
} else {
List<File> ftemps = getFiles(f,fileType);
lfile.addAll(ftemps);
}
}
return lfile;
}

}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
生活he家
2014-09-10 · 一个属于大家的搬运工
生活he家
采纳数:1536 获赞数:6828

向TA提问 私信TA
展开全部
很好实现啊 用递归 遍历文件夹 然后得到文件名 然后splite(".") 之后取后边那个值 比较是不是txt
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式