java 为什么用isDirectory 判断了文件是目录文件,为什么用listFiles返回文件null

java为什么用file.isDirectory判断了file文件是目录文件,为什么用file.listFiles返回文件会为是null?... java 为什么用file.isDirectory 判断了file文件是目录文件,为什么用file.listFiles返回文件会为是null? 展开
 我来答
百度网友6bf1bee
2013-11-26 · TA获得超过239个赞
知道小有建树答主
回答量:244
采纳率:0%
帮助的人:97万
展开全部

刚才看了下JDK,File类:


Returns:

An array of abstract pathnames denoting the files and directories in the
directory denoted by this abstract pathname. The array will be empty if the
directory is empty. 

Returns null if this abstract pathname does not
denote a directory, or if an I/O error occurs. 

也就是当这个File不是目录或者发生了io异常,才会返回null。不然如果这个file是目录的话,而且没有发生io异常,即使这个目录里面没有其他file,用listFiles()方法是不会返回null的!


下面我在我的电脑的E盘新建一个名为1的空文件夹,然后测试:

package test;

import java.io.File;

public class FileTest {

public static void main(String[] args) {

File file = new File("E:\\1");
System.out.println(file.isDirectory());
System.out.println(file.listFiles() == null);
}
}

下面是结果:

张川1990
推荐于2017-12-16 · TA获得超过362个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:152万
展开全部
file可以是一个文件也可以是一个目录。所以用一个isDirectory 来区分是否为目录
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aoisora_blue
2013-11-26 · TA获得超过412个赞
知道小有建树答主
回答量:583
采纳率:0%
帮助的人:366万
展开全部
目录可以是空目录的嘛,下面没有文件。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
love爱有缘
2013-11-26 · TA获得超过1041个赞
知道小有建树答主
回答量:789
采纳率:0%
帮助的人:695万
展开全部
目录里面没有文件吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式