Unity 获取指定文件夹及其子文件夹下所有文件的方法

在Unity中,我们可以使用System.IO命名空间中的DirectoryFile类来获取指定文件夹及其子文件夹下的所有文件。

一、只获取文件夹下所有文件:

复制代码
using System.Collections.Generic;
using System.IO;
using UnityEngine;

public class FileScanner : MonoBehaviour
{
    public string folderPath; // 指定文件夹路径

    void Start()
    {
        List<string> files = GetFilesInFolder(folderPath);
        foreach (string file in files)
        {
            Debug.Log(file);
        }
    }

    List<string> GetFilesInFolder(string folderPath)
    {
        List<string> files = new List<string>();

        if (Directory.Exists(folderPath))
        {
            string[] currentFiles = Directory.GetFiles(folderPath);
            files.Add(currentFiles);
        }
        else
        {
            Debug.LogWarning("文件夹路径不存在:" + folderPath);
        }

        return files;
    }
}

二、获取文件夹及其子文件夹下所有文件:

复制代码
using System.Collections.Generic;
using System.IO;
using UnityEngine;

public class FileScanner : MonoBehaviour
{
    public string folderPath; // 指定文件夹路径

    void Start()
    {
        List<string> files = GetFilesInFolder(folderPath);
        foreach (string file in files)
        {
            Debug.Log(file);
        }
    }

    List<string> GetFilesInFolder(string folderPath)
    {
        List<string> files = new List<string>();

        if (Directory.Exists(folderPath))
        {
            // 获取当前文件夹下的所有文件
            string[] currentFiles = Directory.GetFiles(folderPath);
            files.Add(currentFiles);

            // 递归获取子文件夹下的所有文件
            string[] subFolders = Directory.GetDirectories(folderPath);
            foreach (string subFolder in subFolders)
            {
                files.Add(GetFilesInFolder(subFolder));
            }
        }
        else
        {
            Debug.LogWarning("文件夹路径不存在:" + folderPath);
        }

        return files;
    }
}
相关推荐
KillJUMP9 分钟前
GODOT SHADER关键函数
游戏引擎·godot
Oiiouui3 小时前
Godot(4.x): Python处理转换Excel为注入Json
游戏引擎·godot
追光者♂5 小时前
【测评系列3】CSDN AI数字营销实测体验官:测试 开源项目——Superpowers 游戏引擎从零开发实战指南
人工智能·深度学习·机器学习·typescript·开源·游戏引擎·superpowers
小拉达不是臭老鼠6 小时前
Unity数据持久化_Json
学习·unity
heimeiyingwang6 小时前
【架构实战】订单系统架构设计:电商核心系统的演进
unity·架构·系统架构
元气少女小圆丶6 小时前
SenseGlove Nova 2+Unity开发笔记3
笔记·unity·游戏引擎
Oiiouui6 小时前
Godot(4.x): 游戏管理器: Excel 动态依赖注入实现
游戏·游戏引擎·godot
WMX10126 小时前
Unity-shader学习记录
学习·unity·游戏引擎
WMX10126 小时前
Hololens 2 上部署 Unity+MRTK 项目_模型着色
unity·游戏引擎·hololens
游乐码6 小时前
unity基础(八)协程
游戏·unity·c#·游戏引擎