AssetDatabase.CreateFolder
Declaration
public static string CreateFolder(string parentFolder, string newFolderName);Параметры
| Параметр | Описание |
|---|---|
| parentFolder | Путь к родительской папке. Должен начинаться с "Assets/". |
| newFolderName | Имя новой папки. |
Возвращаемое значение
строка GUID вновь созданной папки, если папка была создана успешно. В противном случае возвращает пустую строку.
Описание
Создает новую папку в указанной родительской папке.
Строка родительской папки должна начинаться с папки "Assets", и все папки в строке родительской папки должны уже существовать. Например, при указании "Assets/ParentFolder1/Parentfolder2/", новая папка будет создана в "ParentFolder2" только если ParentFolder1 и ParentFolder2 уже существуют.
Примечание: Когда Unity пытается создать папку, если папка с таким же именем существует на том же пути, Unity добавляет последовательный номер в конце имени файла. Например, "Моя папка" становится "Моя папка 1".
using UnityEngine; using UnityEditor;
public class CreateFolderExample { [MenuItem("GameObject/Create Folder and Some Assets")] static void CreateFolder() { AssetDatabase.CreateFolder("Assets", "My Folder"); string guid = AssetDatabase.CreateFolder("Assets/My Folder", "My Another Folder"); string newFolderPath = AssetDatabase.GUIDToAssetPath(guid); Debug.Log(newFolderPath);
// Create a simple material asset in the created folder Material material = new Material(Shader.Find("Specular")); string newAssetPath = newFolderPath + "/MyMaterial.mat"; AssetDatabase.CreateAsset(material, newAssetPath); Debug.Log(AssetDatabase.GetAssetPath(material)); } }