关于File的isFile()和isDirectory()方法的疑问

b1412 2010-04-28 08:17:19
在电脑上弄了个返回当前目录下所有文件和文件夹的程序

发现有文件isDirectory()为false, isFile()也为false.有点疑惑,除了这两种还有其他情况吗
...全文
23226 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZHXDD 2010-05-08
  • 打赏
  • 举报
回复
如果这个file在磁盘中真有存储,不是文件则为路径,没其它选项。
龙四 2010-05-08
  • 打赏
  • 举报
回复
不存在的路径!

不会抛出异常,为什么?因为File类就是为了描述路径信息的,什么时候需要描述不存在的路径,比如你需要调用mkdirs这个方法的时候
sysmaid 2010-05-08
  • 打赏
  • 举报
回复
你把name打出来,看到底是什么东西呀~
小_Y 2010-05-08
  • 打赏
  • 举报
回复
文件或文件夹不存在时出现吧。
Seaside_Boy 2010-05-06
  • 打赏
  • 举报
回复
f.isHidden(),看看是不是隐藏文件
zhangsanja 2010-05-06
  • 打赏
  • 举报
回复
你建立一个con的目录试试,再试试e:和e:/的区别。仔细看看API。
suiyuefuchen 2010-05-06
  • 打赏
  • 举报
回复
记得u盘免疫病毒也是这样的,点击它显示不能打开,说引用到其他位置上去;免疫病毒文件是比较特殊的,防止被删除所以有这样的设置,可能这是它无法显示的原因;
yy11ll12 2010-05-06
  • 打赏
  • 举报
回复
路径不正确吧,或者就是路径不可引用
FlyingFish0912 2010-05-05
  • 打赏
  • 举报
回复
应该是某些特殊文件,哪些文件是不可读的吧!
wsqcgcty 2010-05-05
  • 打赏
  • 举报
回复
当File指向的文件或文件夹不存在时,会出现这种情况。
skj824 2010-05-04
  • 打赏
  • 举报
回复
会不会是系统文件啊.系统隐藏文件.无法删除..内容为空..
b1412 2010-05-03
  • 打赏
  • 举报
回复
这个是
E:\AUDIO_TS\autorun.inf\antiautorun..
点击它显示引用了一个不可引用的位置
jacky花园 2010-04-29
  • 打赏
  • 举报
回复
API里面测试也是flase
b11ght 2010-04-29
  • 打赏
  • 举报
回复
应该是不存在的文件吧
cwjieNo1 2010-04-29
  • 打赏
  • 举报
回复
估计是那种特殊文件
beiouwolf 2010-04-29
  • 打赏
  • 举报
回复
WINDOWS的那些特殊文件吧
{123-4123123-asdf}那种?
24K純帥 2010-04-28
  • 打赏
  • 举报
回复
不存在的文件。。
b1412 2010-04-28
  • 打赏
  • 举报
回复
   
if(f.isDirectory()){

}else if(f.isFile()){

}else{
System.out.println(f.getPath()+"不是文件也不是文件夹");
}

大概就是这样,程序运行正常.
然后有个文件输出了else后的语句就是这个情况
b1412 2010-04-28
  • 打赏
  • 举报
回复
路径写的e盘,用的递归去遍历的,每一个File都判断了isDirectory()和 isFile()然后else的.
是一个很特殊的文件,我debug他执行到else了,前面两个条件都没满足..
具体文件名现在不在自己机器记不住..
zfq642773391 2010-04-28
  • 打赏
  • 举报
回复
除非文件路径为空,或不存在,不过也应该抛异常啊
加载更多回复(1)

62,634

社区成员

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

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