C#獲取路徑方法及代碼

string str1 =Process.GetCurrentProcess().MainModule.FileName;//可獲得當前執行的exe的文件名。


string str2=Environment.CurrentDirectory;//獲取和設置當前目錄(即該進程從中啓動的目錄)的完全限定路徑。

//備註按照定義,如果該進程在本地或網絡驅動器的根目錄中啓動,則此屬性的值爲驅動器名稱後跟一個尾部反斜槓(如“C://”)。如果該進程在子目錄中 啓動,則此屬性的值爲不帶尾部反斜槓的驅動器和子目錄路徑(如“C://mySubDirectory”)。


string str3=Directory.GetCurrentDirectory();//獲取應用程序的當前工作目錄。

string str4=AppDomain.CurrentDomain.BaseDirectory;//獲取基目錄,它由程序集衝突解決程序用來探測程序集。


string str5=Application.StartupPath;//獲取啓動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。


string str6=Application.ExecutablePath;//獲取啓動了應用程序的可執行文件的路徑,包括可執行文件的名稱。


string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//獲取或設置包含該 應用程序的目錄的名稱。

 

//獲取當前進程的完整路徑,包含文件名(進程名)。
string str = this.GetType().Assembly.Location;
result: X:/xxx/xxx/xxx.exe (.exe文件所在的目錄+.exe文件名)

//獲取新的 Process 組件並將其與當前活動的進程關聯的主模塊的完整路徑,包含文件名(進程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:/xxx/xxx/xxx.exe (.exe文件所在的目錄+.exe文件名)

//獲取和設置當前目錄(即該進程從中啓動的目錄)的完全限定路徑。
string str = System.Environment.CurrentDirectory;
result: X:/xxx/xxx (.exe文件所在的目錄)

//獲取當前 Thread 的當前應用程序域的基目錄,它由程序集衝突解決程序用來探測程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:/xxx/xxx/ (.exe文件所在的目錄+"/")

//獲取和設置包含該應用程序的目錄的名稱。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:/xxx/xxx/ (.exe文件所在的目錄+"/")

//獲取啓動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。
string str = System.Windows.Forms.Application.StartupPath;
result: X:/xxx/xxx (.exe文件所在的目錄)

//獲取啓動了應用程序的可執行文件的路徑,包括可執行文件的名稱。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:/xxx/xxx/xxx.exe (.exe文件所在的目錄+.exe文件名)

//獲取應用程序的當前工作目錄(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:/xxx/xxx (.exe文件所在的目錄)


string str1 =Process.GetCurrentProcess().MainModule.FileName;//可獲得當前執行的exe的文件名。
string str2=Environment.CurrentDirectory;//獲取和設置當前目錄(即該進程從中啓動的目錄)的完全限定路徑。
//備註 按照定義,如果該進程在本地或網絡驅動器的根目錄中啓動,則此屬性的值爲驅動器名稱後跟一個尾部反斜槓(如“C:/”)。如果該進程在子目錄中啓動,則此 屬性的值爲不帶尾部反斜槓的驅動器和子目錄路徑(如“C:/mySubDirectory”)。
string str3=Directory.GetCurrentDirectory();//獲取應用程序的當前工作目錄。
string str4=AppDomain.CurrentDomain.BaseDirectory;//獲取基目錄,它由程序集衝突解決程序用來探測程序集。
string str5=Application.StartupPath;//獲取啓動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。
string str6=Application.ExecutablePath;//獲取啓動了應用程序的可執行文件的路徑,包括可執行文件的名稱。
string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//獲取或設置包含該 應用程序的目錄的名稱。

1、判定一個給定的路徑是否有效,合法
通過Path.GetInvalidPathChars或Path.GetInvalidFileNameChars方法獲得非法的路徑/文件名字符,可 以根據它來判斷路徑中是否包含非法字符;

2、如何確定一個路徑字符串是表示目錄還是文件
   使用Directory.Exists或File.Exist方法,如果前者爲真,則路徑表示目錄;如果後者爲真,則路徑表示文件
上面的方法有個缺點就是不能處理那些不存在的文件或目錄。這時可以考慮使用Path.GetFileName方法獲得其包含的文件名,如果一個路徑不爲 空,而文件名爲空那麼它表示目錄,否則表示文件;
3、獲得路徑的某個特定部分
   Path.GetDirectoryName :返回指定路徑字符串的目錄信息。
   Path.GetExtension :返回指定的路徑字符串的擴展名。
   Path.GetFileName :返回指定路徑字符串的文件名和擴展名。
   Path.GetFileNameWithoutExtension :返回不具有擴展名的路徑字符串的文件名。
   Path.GetPathRoot :獲取指定路徑的根目錄信息。
4、準確地合併兩個路徑而不用去擔心那個煩人的“/”字符
   使用Path.Combine方法,它會幫你處理煩人的“/”。
5、獲得系統目錄的路徑
   Environment.SystemDirectory屬性:獲取系統目錄的完全限定路徑
   Environment.GetFolderPath方法:該方法接受的參數類型爲Environment.SpecialFolder枚舉,通過這個方 法可以獲得大量系統    文件夾的路徑,如我的電腦,桌面,系統目錄等
   Path.GetTempPath方法:返回當前系統的臨時文件夾的路徑
6、判斷一個路徑是絕對路徑還是相對路徑
   使用Path.IsPathRooted方法
7、讀取或設置當前目錄
   使用Directory類的GetCurrentDirectory和SetCurrentDirectory方法
8、使用相對路徑
   設置當前目錄後(見上個問題),就可以使用相對路徑了。對於一個相對路徑,我們可以使用Path.GetFullPath方法獲得它的完    全限定路徑(絕對路徑)。
    注意:如果打算使用相對路徑,建議你將工作目錄設置爲各個交互文件的共同起點,否則可能會引入一些不易發現的安全隱患,被惡意用戶利用來訪問系統文件。

9、文件夾瀏覽對話框(FolderBrowserDialog類)
主要屬性: Description:樹視圖控件上顯示的說明文本,如上圖中的“選擇目錄--練習”;RootFolder:獲取或設置從其開始瀏覽的根文件夾,如上 圖中設置的我的電腦(默認爲桌面);SelectedPath:獲取或設置用戶選定的路徑,如果設置了該屬性,打開對話框時會定位到指定路徑,默認爲根文 件夾,關閉對話框時根據該屬性獲取用戶用戶選定的路徑;         ShowNewFolderButton:獲取或設置是否顯示新建對話框按鈕;
主要方法: ShowDialog:打開該對話框,返回值爲DialogResult類型值,如果爲DialogResult.OK,則可以由 SelectedPath屬性獲取用戶選定的路徑;
Assembly asm = Assembly.GetExecutingAssembly();
string path = asm.Location.Remove(asm.Location.LastIndexOf("//")) + "//";
System.Diagnostics.Process.Start(path + "SerialTest.exe"); //文件的安裝路徑和文件名
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章