Android 资产文件或目录 [重复]

问题描述 投票:0回答:0

我试图列出资产子目录(包括子子目录)中的所有文件,但是当涉及到识别文件是常规文件还是目录时,我被卡住了。

目录树可以是这样的:

assets/imports
assets/imports/set_one/...(multiple files)
assets/imports/set_two/...(multiple files)
assets/imports/...(other optional files and directories)

到目前为止我尝试过的是:

val IMPORTS_PATH = "imports"
val assetFileNames = context.assets.list(path)!!.asList()
for(file in assetFileNames) {
    val subPathString = "$IMPORTS_PATH/$file"
    val isDir1 = File(subPathString).isDirectory //always false,
    val isFile1 = File(subPathString).isFile //always false, same as above
    
    val subPathObj = Paths.get(subPathString)
    val isDir2 = Files.isDirectory(subPathObj) //always false, same as above

我什至尝试读取文件属性但得到 NoSuchFileException 尽管文件确实存在。

是否有一种干净的方法来判断文件是目录还是普通文件?

android kotlin android-assets
© www.soinside.com 2019 - 2024. All rights reserved.