EditorUtility.SaveFilePanel的應(yīng)用

Unity編輯器之導入導出獲取路徑對話框



[MenuItem("ExportXmlLanguage/導出xml作為參照文本")]

? ? static void ExportXML()

? ? {

? ? ? ? string path = EditorUtility.SaveFilePanel("Save Resource", "", "RootDataLanguage", "xml");

? ? ? ? if (path.Length != 0)

? ? ? ? {

? ? ? ? ? ? UnityEngine.Object[] selectedAssetList = Selection.GetFiltered(typeof(UnityEngine.Object), SelectionMode.DeepAssets);

? ? ? ? ? ? string[] files = Directory.GetFiles(endtargetpath);

? ? ? ? ? ? int index = 0;

? ? ? ? ? ? XmlDocument xmlDocument = new XmlDocument();

? ? ? ? ? ? XmlDeclaration xmlDeclaration = xmlDocument.CreateXmlDeclaration("1.0", "utf-8", null);

? ? ? ? ? ? xmlDocument.AppendChild(xmlDeclaration);

? ? ? ? ? ? // 創(chuàng)建XML根標志

? ? ? ? ? ? XmlElement rootXmlElement = xmlDocument.CreateElement("root");

? ? ? ? ? ? //遍歷所有的游戲?qū)ο?/p>

? ? ? ? ? ? foreach (UnityEngine.Object selectObject in selectedAssetList)

? ? ? ? ? ? {

? ? ? ? ? ? ? ? index++;

? ? ? ? ? ? ? ? string feilname = selectObject.name;

? ? ? ? ? ? ? ? // 創(chuàng)建文件標志

? ? ? ? ? ? ? ? XmlElement feilXmlElement = xmlDocument.CreateElement("tag");

? ? ? ? ? ? ? ? feilXmlElement.InnerText = feilname;

? ? ? ? ? ? ? ? rootXmlElement.AppendChild(feilXmlElement);

? ? ? ? ? ? ? ? xmlDocument.AppendChild(rootXmlElement);

? ? ? ? ? ? }

? ? ? ? ? ? // 保存文件數(shù)據(jù)

? ? ? ? ? ? xmlDocument.Save(path);

? ? ? ? ? ? // 刷新Project視圖

? ? ? ? ? ? AssetDatabase.Refresh();

? ? ? ? ? ? EditorUtility.DisplayDialog("完成", "所有data文件已導入XML", "OK");

? ? ? ? }

? ? }


備注:SelectionModehttp://www.ceeger.com/Script/Editor_Enumerations/SelectionMode/SelectionMode.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容