求取一个目录下的所有文件名(不含后缀的)

loukcn 2007-09-26 03:43:22
如题,之前看到有人问这个问题,回答的人的解释import java.io.*;

public class testFile {

public static void main(String[] arg) {
File dir = new File("D:\\a\\");

FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String name) {
String s = name.substring(0, name.lastIndexOf("."));
System.out.print(s+"++ " ); ****这里的s已经是我想要的内容
return s.equals("MyClass");
}
};
String[] children = dir.list(filter);****到这里就过不去了。

for (int i = 0; i < children.length; i++) {
// Get filename of file or directory
String filename = children[i];
System.out.print(filename+"++ " );得到的是全名(带后缀的)

}

}

}
...全文
300 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
loukcn 2007-09-27
  • 打赏
  • 举报
回复
谢谢关心
zhuxinkun 2007-09-26
  • 打赏
  • 举报
回复
呃...晕.
原来早已解决了啊.
zhuxinkun 2007-09-26
  • 打赏
  • 举报
回复
我写了这个,测过好像可以.
File fdir = new File("d:\\");
//フォルダにあるファイルのみ処理の対象になる
File[] fList = fdir.listFiles(new FileFilter() {
public boolean accept(File arg0) {
if (arg0.isFile()) {
//String s = "";
if (arg0.getPath().lastIndexOf(".") <= 0) {
//s = arg0.getPath().substring(0);
return true;
} else {
//s = arg0.getPath().substring(0, arg0.getPath().lastIndexOf("."));
return false;
}
}
return false;
}
});


for (int i = 0; i < fList.length; i++) {
System.out.println(fList[i].getName());
System.out.println(fList[i].getPath());
}
storm_zone 2007-09-26
  • 打赏
  • 举报
回复
领分来了
loukcn 2007-09-26
  • 打赏
  • 举报
回复
以解决,谢谢关心

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧