版本:Unity 6 (6000.0)
语言English
  • C#

AssetDatabase.GetMainAssetTypeAtPath

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法采纳所有提交,但我们确实会阅读用户提出的每一项更改建议,并在适用情况下进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

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); } } }