Unity编辑器小工具——文件查重(MD5)
算法思想:
在Unity中,每一个不同资源、文件所生成MD5码是不同的,但是相同文件,路径不同、文件名不同的同一类文件的MD5码是相同的,所以可以通过生成每个文件的MD5来判断文件是否是重复的。
具体脚本代码如下:
using UnityEngine;
using System.Collections;
using System.IO;
using UnityEditor;
using System.Security.Cryptography;
using System;
using System.Linq;
public class FindMD : MonoBehaviour {
string[] files;
[MenuItem("Assets/Find Files MD5")]
public static void Find()
{
int flag = 0;
string[] files = Directory.GetFiles("Assets/", "*.*", SearchOption.AllDirectories);
for (int i = 0; i < files.Length; i++)
{
if (files[i].EndsWith(".meta"))
{
continue;
}
//加载进度条
EditorUtility.DisplayCancelableProgressBar("匹配资源中", files[i], ((float)i / (