A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 夏的四季 于 2014-2-24 11:50 编辑
  1. import java.io.*;
  2. class FileListDemo
  3. {
  4. public static void main(String[] args)
  5. {
  6. listDemo();
  7. }
  8. public static void listDemo()
  9. {
  10. File f = new File("D:\\java001\\day19");

  11. String[] name = f.list(".java");
  12. for(File name : names)
  13. {
  14. System.out.println(name);
  15. }
  16. }
  17. }
复制代码

方法获取指定文件夹中所有java文件怎么做,我所写的有问题,
帮我指出和重新编写下代码
谢谢

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

3 个回复

倒序浏览
  1. import java.io.*;

  2. class FileListDemo {
  3.         public static void main(String[] args) {
  4.                 listDemo();
  5.         }

  6.         public static void listDemo() {
  7.                 File f = new File("D:\\Download\\java_test");

  8.                 File[] files = f.listFiles();
  9.                 for (File file : files) {
  10.                         if(file.getName().endsWith(".java")){
  11.                                 System.out.println(file.getName());
  12.                         }
  13.                 }
  14.         }
  15. }
复制代码


我把路径修改成了我自己的路径

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
String[] list(FilenameFilter filter)  
你应该传递一个文件名过滤器,可以采用匿名内部类的方式:
如下:
  1. String[] names = file.list(new FilenameFilter(){

  2.                         @Override
  3.                         public boolean accept(File dir, String name) {
  4.                                 // TODO Auto-generated method stub
  5.                                 if(name.endsWith(".java"))
  6.                                         return true;
  7.                                 return false;
  8.                         }
  9.                        
  10.                 });
复制代码

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报 1 0
李白衣 发表于 2014-2-24 11:44
String[] list(FilenameFilter filter)  
你应该传递一个文件名过滤器,可以采用匿名内部类的方式:
如下: ...

用文件名过滤器  来封装判断,这样显得 程序更严谨,顶一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马