最近在看 nio 的文章,看到有个 isRegularFile 这个方法没理解什么意思,源码的注释是 Tests whether a file is a regular file with opaque content.,什么是正常的不透明的文件呢?有大神讲解下么
1
nziming 2020-05-27 10:19:52 +08:00
!isSymbolicLink() && !isDirectory() && !isOther();
|
2
fixend 2020-05-27 10:25:54 +08:00
regular file 一般都是 linux/unix 下面的说法,windows 编程的书没看到这个。
比如 linux 下面,设备也是一个文件,这个就不属于 regular file,还有就是楼上说的那些。 反正 regular file 就是一个普通文件。 |
3
kilen3a 2020-05-27 11:45:02 +08:00
是不是还有 isDirectoryFile isBlockSpecialFile isSymbolicLinkFile 什么的,那都是 Unix 系的文件分类法 bcdpsl 什么的
|
4
Mutoo 2020-05-27 12:59:01 +08:00
在 *nix 系统中,万物皆文件,文件夹、设备、网络、流等等都是文件。
后半句 opaque content 的意思是,这个接口不读取文件的实际内容来判断它是否为普通文件(而是通过 directory 或操作系统操作的信息)。 |