黑马程序员技术交流社区

标题: File类的delete()功能 [打印本页]

作者: LARK    时间: 2016-10-13 16:33
标题: File类的delete()功能
File类的delete()功能,如果同一路径下有同名的文件和文件夹,请问,到底会删除哪一个?

作者: 708926295@qq.co    时间: 2016-10-13 18:48
楼主这个问题很有内涵,其实我也想问。

作者: gyy    时间: 2016-10-13 19:06
api 文档中是这么写的
--------------------------------------
Deletes the file or directory denoted by this abstract pathname. If this pathname denotes a directory, then the directory must be empty in order to be deleted.
Note that the Files class defines the delete method to throw an IOException when a file cannot be deleted. This is useful for error reporting and to diagnose why a file cannot be deleted.
--------------------------------------

大致意思是,如果这个File类代表的是一个目录,那么会这个目录中不能有文件,调用这个方法以后,将不再有这个目录。如果有文件将返回false;如果这个file类是一个文件的话,这时候如果文件的权限是可读可写的,将返回true,如果不是的话,会抛出异常。可以做个测试看看,多动手


作者: 饭要大口吃    时间: 2016-10-13 19:15


我也不清楚 才学File类 想了半天  不知道是不是这样..

delete()方法 删除文件夹的情况首先要文件夹内没有文件才行,

那么删除文件夹 例如文件夹名称为 "新建文件夹" ;

同名文件为TXT格式的文件他的名称就是"新建文件夹.txt" 才能指向这个对象.

所以是不能同时删除的.
作者: LARK    时间: 2016-10-13 23:22
gyy 发表于 2016-10-13 19:06
api 文档中是这么写的
--------------------------------------
Deletes the file or directory denoted by ...

还没没看懂是啥意思,还是自己动手试吧
作者: gao5867565    时间: 2016-10-13 23:58
提示 不能有相同的名字,所以同一个文件夹内不能有相同名字的文件或文件夹
作者: LARK    时间: 2016-10-14 00:30
gao5867565 发表于 2016-10-13 23:58
提示 不能有相同的名字,所以同一个文件夹内不能有相同名字的文件或文件夹 ...

我说的是,文件和文件夹同名。是可以有的
比如都叫aaa.txt

作者: gao5867565    时间: 2016-10-14 00:33
又试了下,文件夹和文件同名都不行
作者: LARK    时间: 2016-10-14 00:41
gao5867565 发表于 2016-10-14 00:33
又试了下,文件夹和文件同名都不行

不早了,快睡吧,哈哈哈哈





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2