注册 登录
编程论坛 JAVA论坛

java中File类目录和文件判别方法问题

逆水寒刘 发布于 2015-12-12 11:08, 1959 次点击
package test;

import
import
import java.util.Scanner;

public class TxtEdit{
public static void main(String[] args) throws IOException{
        String pathname="F:/BaiduYunDownload ";
          File file=new File(pathname);
    File[] filelist=file.listFiles();
    for(int i=0;i<filelist.length;i++){
         
        if(filelist[i].isDirectory()){
            String apath=filelist[i].getCanonicalPath();
            System.out.println("目录:"+apath);
            
        }else if(filelist[i].isFile()){
            String apath=filelist[i].getCanonicalPath();
            System.out.println("文件:"+apath);
        }
    }
}
}
这是从一个目录中获取文件,并判断获取的是文件还是目录。在pathname目录中实际上是有文件和目录的,但这里却什么都不会输出,
特来请教各位,谢谢指导!
3 回复
#2
琦安2015-12-12 16:10
String apath=filelist[i].getCanonicalPath();

System.out.println("文件:"+apath);把以上两行代码改为:System.out.println("文件:"+filelist[i]);
以上的程序只能显示第一层的文件和文件夹,不能输出子文件夹里的文件夹和文件的路径
#3
逆水寒刘2015-12-13 11:06
回复 2楼 琦安
改过之后还是什么都不输出显示啊。
程序代码:
//查看文件列表
            if(str.startsWith("list")){
                File file=new File(pathname);
                File filelist[]=file.listFiles();
               
                for(int i=0;i<filelist.length;i++){
  
                    if(filelist[i].isDirectory()){
                        System.out.println("目录:"+filelist[i]);
                    }else if(filelist[i].isFile()){
                        System.out.println("文件:"+filelist[i]);
                    }
#4
逆水寒刘2015-12-13 16:47
我现在问题已经解决了,代码没有问题。我又重新建立了个.java文件重新编译,得到了目录和文件的判断。不过具体是什么原因出现了这种状况还不是很清楚。
1