1.6 KiB
1.6 KiB
#unity/日常积累
FileUtil.GetProjectRelativePath
是一个在Unity编辑器扩展或插件开发中常用的函数,它用于获取指定文件相对于当前Unity项目的相对路径。这个函数非常有用,因为它允许开发者在编写编辑器脚本时处理文件路径,而不需要担心项目的具体存储位置。
要使用FileUtil.GetProjectRelativePath
,你需要将文件或目录的绝对路径作为参数传递给该函数。它将返回一个字符串,表示该文件或目录相对于Unity项目根目录的路径。
以下是一个使用FileUtil.GetProjectRelativePath
的示例:
using UnityEngine;
using UnityEditor;
using System.IO;
public class ExampleScript
{
[MenuItem("Example/Get Relative Path")]
private static void GetRelativePath()
{
// 假设你有一个文件的绝对路径
string absolutePath = "/Users/yourusername/Projects/YourUnityProject/Assets/ExampleFolder/ExampleFile.txt";
// 使用FileUtil.GetProjectRelativePath获取相对于Unity项目的路径
string relativePath = FileUtil.GetProjectRelativePath(absolutePath);
// 输出相对路径
Debug.Log(relativePath); // 将输出:Assets/ExampleFolder/ExampleFile.txt
}
}
在这个示例中,我们创建了一个名为ExampleScript
的类,并在其中定义了一个静态方法GetRelativePath
。这个方法通过[MenuItem]
属性与Unity编辑器的一个菜单项相关联。当用户选择这个菜单项时,它将获取一个硬编码的绝对路径,并使用FileUtil.GetProjectRelativePath
将其转换为相对于Unity项目的路径,然后输出到控制台。