FileUtil
является частью пространства имен UnityEditor
.Он не существует в сборке, но только в самом редакторе Unity.
=> Вы не можете использовать что-либо из этого в встроенном приложении.
Обычно вы используете его только для сценариев редактора (то, что должно происходить только в Unity, например, при наличии модных инспекторов и т. Д.).
Чтобы исключить такие части кода из сборки, существует два основных способа:
Убедитесь, что все сценарии редактора размещены в папках с именем Editor
.Они автоматически исключаются из процесса сборки.
Если вы хотите исключить только определенные блоки кода из сборки (все, что использует UnityEditor
, вы можете использовать , если используются препроцессоры с UNITY_EDITOR
#if UNITY_EDITOR
using UnityEditor;
#endif
...
#if UNITY_EDITOR
// some code using the UnityEditor namespace
#endif
Для удаления папки во время выполнения вы можете использовать, например, Directory.Delete
Для файла вы можете использовать File.Delete
В обоих случаях вы никогда не должны напрямую объединять строки пути, а использовать Path.Combine
using System.IO;
...
var path = Path.Combine(Application.persistentDataPath, "ARPortal", P.parent.gameObject.name);
//if it is an empty folder use
Directory.Delete(path);
//if it is a folder with content use
Directory.Delete(path, true);
//if it is a file use
File.Delete(path);