Я пишу программу, которая должна выводить мета-информацию (размер, права на выполнение / чтение / запись, время последней модификации) всех файлов из указанного каталога.
Я получил информацию обо всей информации, кроме прав на выполнение / чтение / запись.
Я пытался получить эту информацию с помощью 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
}