Kotlin遞歸查找子父目錄所有文件

Kotlin遞歸查找子父目錄所有文件

  • listFiles遞歸查找所有文件的方法
 /**
     * 列出文件清單,以一個數組形式返回,
     *
     * @param filePath 磁盤文件路徑
     * @param fileArr  此參數需要傳一個 MutableList<>()進入方法體,在方法體創建一個對象數組,子目錄的文件存放不了進數組進行返回
     * @return List<String?>?
     */
    open fun listFiles(filePath: String, fileArr: MutableList<String>): List<String?>? {
        val files = File(filePath).listFiles()
        for (k in files.indices) {
            if (files[k].isDirectory) {
                listFiles(files[k].path, fileArr)
            } else if (!files[k].isDirectory) {
                fileArr.add(files[k].absolutePath)
            }
        }
        return fileArr
    }
  • 測試main
fun main() {
    //文件夾路徑,不包含文件的路徑
    val filePath ="D:\\video"
    var listFiles = listFiles(filePath, ArrayList())
    listFiles?.stream()?.forEach{
        println(it)
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章