Version: 2020.3

AssetDatabase.GetMainAssetTypeAtPath

切换到手册
public static Type GetMainAssetTypeAtPath (string assetPath);

参数

assetPath 要加载的资源的文件系统路径。

描述

返回 assetPath 下主资源对象的类型。

所有路径均是相对于项目文件夹的路径,例如:"Assets/MyTextures/hello.png"。

using System.Collections.Generic;
using UnityEngine;
using UnityEditor;

public class AssetDatabaseExamples : MonoBehaviour { [MenuItem("AssetDatabase/Print Type Count")] static void GetAllAssetTypeCount() { var typeCount = new Dictionary<string, uint>(); //Put all the types that were found in the typeCount dictionary and increment their count foreach (var guid in AssetDatabase.FindAssets("", new []{"Assets"})) { var path = AssetDatabase.GUIDToAssetPath(guid); var typeString = AssetDatabase.GetMainAssetTypeAtPath(path).ToString(); if (typeCount.ContainsKey(typeString)) typeCount[typeString]++; else typeCount.Add(typeString, 1); } //Print types and their count into the Unity Console foreach (var element in typeCount) { Debug.Log(element); } } }