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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

在判断是文件还是目录是的一个小陷阱:
人们往往认为有后缀名的就一定是文件,其实不然,请看以下程序
程序一:
class  One{
public static void main(String[] args)throws IOException{//此程序只为处为说说明问题所以直接跑了异常
               
                File  f = new File("abc.txt");
                 
                 //判断文件在硬盘上是否存在不出在就创建该文件,若存在就不创建
                 if(!f.exists()){
                   f.createNewFile();//此处是创建文件
                 }
                 if(f.isDirectory()){
                        sop("f is isDirectory is " + f.isDirectory());
                 }else {
                        if(f.isFile())
                        sop("f is file is " + f.isFile());
                 }
                  
        }
}
结果为:f is file is true

程序二:
class Tow{
        public static void main(String[] args)throws IOException{//此程序只为处为说说明问题所以直接抛了异常
               
                File  f = new File("abc.txt");
               
                 
                 //判断文件在硬盘上是否存在不出在就创建该文件,若存在就不创建
                 if(!f.exists()){
                    f.mkdir();//此处是创建目录(文件夹)
                 }
                 if(f.isDirectory()){
                        sop("f is isDirectory is " + f.isDirectory());
                 }else {
                        if(f.isFile())
                        sop("f is file is " + f.isFile());
                 }
                  
        }
结果为:f is isDirectory is true
所一通过这两个程序可一发现,原来文件夹也是可以有”后缀“的,当然这个后缀是为后缀。所以判断一个文件对象到底是文件夹还是文件,不应该从表面来判断,而应该看其实怎样创建出来的。

2 个回复

倒序浏览
好吧。楼主,继续加油,
回复 使用道具 举报
不错,文件夹中间可以包含小数点...
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马