筆者介紹:姜雪偉,it公司技術合夥人,it高階講師,csdn社群專家,特邀編輯,暢銷書作者,已出版書籍:《手把手教你架構3d遊戲引擎》電子工業出版社和《unity3d實戰核心技術詳解》電子工業出版社等。
unity工具是遊戲製作必須配備的,unity雖然提供了強大的編輯器,但是對於遊戲開發的需求來說還是遠遠不夠的,這也需要我們自己編寫一些小工具去實現特定的需求,比如編寫遍歷資源檔案的所有子檔案用於打包處理,這些需要我們自己去封裝函式介面。
第一步,實現獲取儲存檔案以及子檔案的函式:
private static listgetresalldirpath()
if (ret != null)
ret.sort(ondirsort);
return ret;
}
該函式是對外提供的函式,它返回資源的所有檔案以及子檔案,在該函式中使用了介面assetbundlebuild.getalllocalsubdirs(cassetsresourcespath);
第二步,實現遍歷所有子檔案函式,它採用的是迭代的遍歷:
public static listgetalllocalsubdirs(string rootpath)
for (int i = 0; i < dirs.length; ++i)
return ret;
}
在上述函式中呼叫了函式介面
assetbunbleinfo.getlocalpath(dirs[i]);
該介面的實現函式如下所示:
// 獲得根據assets目錄的區域性目錄
public static string getlocalpath(string path)
繼續介面的呼叫函式
getassetrelativepath
實現如下所示:
public static string getassetrelativepath(string fullpath)
最後乙個函式是direxistresource函式用於判斷檔案是否存在,它的實現**如下所示:
// 根據目錄判斷是否有資源檔案
public static bool direxistresource(string path)
else
if (resourceexts[j] == ".unity")
return true;}}
} return false;
}
**中的resourceexts
是事先定義好的能夠遍歷到的副檔名,如下所示:
// 支援的資源檔案格式
private static readonly string resourceexts = ;
最後一步是判斷scene是否有效的函式介面:
isvaildsceneresource
實現**如下所示:
private static bool isvaildsceneresource(string filename)
}} return ret;
}
這樣遍歷所有資源下的檔案和子檔案的所有函式就完成了,放在工具**中實現即可。
遍歷指寫碟符下的所有檔案
很多以前寫的,可以遍歷指寫碟符下的所有檔案,以目錄的形式顯示出來,且資料夾用紅色粗體顯示.最後還統計總檔案的個數,所佔空間等等.dim check t check t 0 dim tab symbol tab symbol dim afiles,afolder,afilesize afiles 0 ...
python 快速遍歷路徑下的所有檔案
利用os 庫遍歷資料夾內的所有檔案 假設是最後一級目錄資料夾,即 daygoodscate color 資料夾內不再包含資料夾 import os import pandas as pd inputdir users zhyueln data daygoodscate color for root,...
Delphi下遍歷資料夾下所有檔案的遞迴演算法
在實際開發中經常需要遍歷某個資料夾及其子資料夾下的檔案,看到很多人不知道如何做,忍不住寫段東西與大家分享。procedure maketree var slfile tstrings const fileext string var sr tsearchrec err integer trsize,...