Unity技術 資源管理器explorer使用

Unity技術 資源管理器explorer使用
簡介
在Window上可以使用explorer來啓動資源管理器,來查看相應的內容。在Unity中編寫編輯器時,有時候會希望處理完成後打開對應的文件所在的位置,以方便給使用者提示生成的文件位置或者查看生成結果,本文將介紹一下explorer的命令行參數及如何在C#中使用

對於Explorer大家應該是經常用到,如果覺得陌生,可以打開"任務管理器"找到explorer,然後結束掉此進程,看看會出現什麼情況

聲明
本文中的內容屬於個人總結整理而來,個人水平有限,對於部分細節難免有理解錯誤及遺漏之處,如果您在閱讀過程中有所發現,希望您能指正,同時文章中的部分內容也參考了其它大神的文章,如果文章中的內容侵犯了您的權益,表示非常歉意,請您指出,我將盡快修改。

如果您進行轉載,請標明出處。

資源管理器explorer使用(http://www.liyubin.com/articles/2019/04/11/1554960175844.html)

Explorer命令行參數
命令格式:

Explorer /n[[,/root],[path]][[,/select],[path filename]]

參數說明:

/n 表示以“我的電腦”方式打開一個新的窗口,通常打開的是Windows安裝分區的根目錄

/e 表示以“資源管理器”方式打開一個新的窗口,通常打開的也是Windows安裝分區的根目錄

/root,[path] 表示打開指定的文件夾,/root表示只顯示指定文件夾下面的文件(夾),不顯示其它磁盤分區和文件夾;[path]表示指定的路徑

如果不加/root參數,而只用[path]參數,則可以顯示其它磁盤分區和文件夾中的內容。另外,[path]還可以指定網絡共享文件夾。

/select,[path filename]表示打開指定的文件夾並且選中指定的文件,[path filename]表示指定的路徑和文件名.

如果不加/select參數,則系統會用相應的關聯程序打開該文件。如果[path filename]不跟文件名就會打開該文件夾的上級目錄並選中該文件夾。

示例:

Explorer /n

此命令使用默認設置打開一個資源管理器窗口。顯示的內容通常是安裝 Windows 的驅動器的根目錄。

Explorer /e

此命令使用默認視圖啓動 Windows 資源管理器。

Explorer /e,C:Windows

此命令使用默認視圖啓動 Windows 資源管理器,並把焦點定位在 C:Windows。

Explorer /root, C:WindowsCursors

此命令啓動 Windows 資源管理器後焦點定位在 C:WindowsCursors folder。此示例使用 C:WindowsCursors 作爲 Windows 資源管理器的"根"目錄。
備註:請注意命令中"/root"參數後面的逗號。

Explorer /select, C:WindowsCursorsbanana.ani

此命令啓動 Windows 資源管理器後選定"C:WindowsCursorsbanana.ani"文件。
備註:請注意命令中"/select"參數後面的逗號。

Unity中使用C#中調用Explorer
在C#腳本中可以使用Process來調用explorer來打開需要的目錄或者選中需要的文件。

調用explorer在win上打開目錄

ExplorerUtil.OpenExplorerFolder(@"C:Windows")

調用explorer在Win上打開目錄並選中希望選中的文件

ExplorerUtil.OpenExplorerFile(@"c:windowssystem32calc.exe")

注意事項:

對於目錄或者文件路徑需要特別注意的,只能使用""而不能使用"/"

public static class ExplorerUtil
{
public static void OpenExplorerFolder(string dirPath)
{

if UNITY_EDITOR

System.Diagnostics.Process open = new System.Diagnostics.Process();
open.StartInfo.FileName = "explorer";
open.StartInfo.Arguments = @"/e /root," + dirPath.Replace("/", "\");
open.Start();

endif

}

public static void OpenExplorerFile(string filePath)
{

if UNITY_EDITOR

System.Diagnostics.Process open = new System.Diagnostics.Process();
open.StartInfo.FileName = "explorer";
open.StartInfo.Arguments = @"/select," + filePath.Replace("/", "\");
open.Start();

endif

}
}
更多unity2018的功能介紹請到paws3d爪爪學院查找。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章