获取权限数据 [用于执行/读/写] 文件的问题
Problem with getting rights data [for execution / read / write] file
我正在编写一个程序,它应该输出指定目录中所有文件的元信息(大小、执行/读/写权限、上次修改时间)。
我收到了关于所有信息的信息,除了执行/读/写的权限。
我尝试使用 PosixFilePermissions 获取此信息,但是当添加到列表时,我在线程 "main" java.lang.UnsupportedOperationException 中出现异常。
也许你应该使用其他图书馆?还是我在某处犯了错误?如果有任何建议,我将不胜感激!
fun long(path:Path) : MutableList<String> {
var listOfFiles = mutableListOf<String>()
val files = File("$path").listFiles()
var attr: BasicFileAttributes
Arrays.sort(files, NameFileComparator.NAME_COMPARATOR)
files.forEach {
if (it.isFile) {
attr = Files.readAttributes<BasicFileAttributes>(it.toPath(), BasicFileAttributes::class.java)
listOfFiles.add("${it.name} ${attr.size()} ${attr.lastModifiedTime()}" +
" ${PosixFilePermissions.toString(Files.getPosixFilePermissions(it.toPath()))}")
}
else listOfFiles.add("dir ${it.name}")
}
return listOfFiles
}
PosixFilePermissions
仅可用于 POSIX 兼容的文件系统(Linux 等)。
对于Windows系统,必须直接访问权限:
file.canRead()
file.canWrite()
file.canExecute()
我正在编写一个程序,它应该输出指定目录中所有文件的元信息(大小、执行/读/写权限、上次修改时间)。 我收到了关于所有信息的信息,除了执行/读/写的权限。
我尝试使用 PosixFilePermissions 获取此信息,但是当添加到列表时,我在线程 "main" java.lang.UnsupportedOperationException 中出现异常。 也许你应该使用其他图书馆?还是我在某处犯了错误?如果有任何建议,我将不胜感激!
fun long(path:Path) : MutableList<String> {
var listOfFiles = mutableListOf<String>()
val files = File("$path").listFiles()
var attr: BasicFileAttributes
Arrays.sort(files, NameFileComparator.NAME_COMPARATOR)
files.forEach {
if (it.isFile) {
attr = Files.readAttributes<BasicFileAttributes>(it.toPath(), BasicFileAttributes::class.java)
listOfFiles.add("${it.name} ${attr.size()} ${attr.lastModifiedTime()}" +
" ${PosixFilePermissions.toString(Files.getPosixFilePermissions(it.toPath()))}")
}
else listOfFiles.add("dir ${it.name}")
}
return listOfFiles
}
PosixFilePermissions
仅可用于 POSIX 兼容的文件系统(Linux 等)。
对于Windows系统,必须直接访问权限:
file.canRead()
file.canWrite()
file.canExecute()