Unity中如何检查Assets目录下指定文件夹是否已存在?
Unity 文件夹创建前的存在性检查实现
要在创建"My Folder"前先检查Assets目录中是否已存在该文件夹,可以利用Unity的AssetDatabase类提供的方法来实现,修改后的代码如下:
private void Start() { // 拼接完整的文件夹路径 string folderPath = "Assets/My Folder"; // 检查文件夹是否已存在 if (!AssetDatabase.IsValidFolder(folderPath)) { // 不存在则创建文件夹,返回新文件夹的GUID(可按需使用) string folderGuid = AssetDatabase.CreateFolder("Assets", "My Folder"); // 刷新AssetDatabase,确保编辑器能立即显示新文件夹 AssetDatabase.Refresh(); } }
关键逻辑说明:
- 使用
AssetDatabase.IsValidFolder()方法传入完整路径,直接判断目标文件夹是否有效存在 - 仅当文件夹不存在时才执行创建操作,避免重复创建引发的编辑器警告
- 创建后调用
AssetDatabase.Refresh(),保证Unity编辑器界面能及时更新显示新创建的文件夹
内容的提问来源于stack exchange,提问作者Daniel Lip
相关产品推荐
相关产品推荐

