Version: 2021.2
言語: 日本語
public static string AssetPathToGUID (string path);
public static string AssetPathToGUID (string path, AssetPathToGUIDOptions options= AssetPathToGUIDOptions.IncludeRecentlyDeletedAssets);

パラメーター

path アセットのファイルシステム上のパス
options Specifies whether this method should return a GUID for recently deleted assets. The default value is AssetPathToGUIDOptions.IncludeRecentlyDeletedAssets.

戻り値

string GUID

説明

アセットのパスから GUID を取得します

すべてのパスは、例えば "Assets/MyTextures/hello.png" のような Project フォルダーに対する相対パスです。

When you delete an asset, the GUID for that asset remains in Unity's asset database until you close the Editor. As a result, by default this method will still return GUIDs for assets that were deleted in the current session of the Unity Editor.

For assets that do not exist, and were not deleted in the current Editor session, this method returns an empty string.

If you need it to return an empty string for assets that were deleted in the current Editor session, pass the value AssetPathToGUIDOptions.OnlyExistingAssets as the "options" parameter.

using UnityEngine;
using UnityEditor;

public class Example : MonoBehaviour { [MenuItem("AssetDatabase/AssetPathToGUID")] static void Doit() { // texture.jpg exists or was recently deleted string t = AssetDatabase.AssetPathToGUID("Assets/texture.jpg"); Debug.Log(t); // t will be not null }

[MenuItem("AssetDatabase/AssetPathToGUID Existing Assets Only")] static void DoitExistingAssetsOnly() { // texture.jpg does not exist on disk string t = AssetDatabase.AssetPathToGUID("Assets/texture.jpg", AssetPathToGUIDOptions.OnlyExistingAssets); Debug.Log(t); // t will be null } }

See AssetDatabase.GUIDFromAssetPath for a version that returns a UnityEditor.GUID instead of a string.