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)
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章