在C#中如何獲取程序的命令行參數(shù)
在C#中獲取程序的命令行參數(shù)
實(shí)現(xiàn)此目的的一種方法是重寫(xiě)程序的Main方法并賦予其一個(gè)字符串?dāng)?shù)組參數(shù),如下面的代碼所示。
static void Main(string[] args)
{
foreach (string arg in args)
{
lstArguments.Items.Add(arg);
}
}這種方法是從 C 編程語(yǔ)言繼承而來(lái)的。
我更喜歡下面的方法
部分是因?yàn)槟恍枰幚鞰ain,部分是因?yàn)樗试S您在程序中的任何位置檢查命令行參數(shù)。
private void Form1_Load(object sender, EventArgs e)
{
foreach (string arg in Environment.GetCommandLineArgs())
{
lstArguments.Items.Add(arg);
}
}此代碼只是循環(huán)遍歷Environment.GetCommandLineArgs方法 返回的參數(shù)。
集合中的第一個(gè)參數(shù)始終是執(zhí)行程序的完全限定名稱(chēng)。集合的其余部分保存?zhèn)鬟f給程序的任何其他參數(shù)。
這種技術(shù)很有趣
但更有趣的是,你可以用很多方法向程序發(fā)送參數(shù)。
例如,你可以:
在 IDE 中設(shè)置它們。打開(kāi)“項(xiàng)目”菜單,選擇“屬性”(在底部),單擊“調(diào)試”選項(xiàng)卡,然后在“命令行參數(shù)”文本框中輸入?yún)?shù)。(這主要用于測(cè)試。)
在命令提示符下執(zhí)行程序(例如,運(yùn)行命令或 cmd.exe),并在后面加上參數(shù)
將一個(gè)或多個(gè)文件或文件夾拖放到可執(zhí)行程序上。
右鍵單擊并將文件或文件夾發(fā)送到“發(fā)送到”菜單中添加的可執(zhí)行程序(請(qǐng)參閱我的帖子“將項(xiàng)目添加到發(fā)送到菜單”)。
拖放和發(fā)送到方法為您提供了一種相當(dāng)簡(jiǎn)單的方法來(lái)制作處理文件或目錄的程序。啟動(dòng)時(shí),程序可以檢查其命令行參數(shù)。如果有任何參數(shù)(除程序名稱(chēng)外),它可以處理文件。如果沒(méi)有參數(shù),它可以顯示用戶(hù)界面,以便用戶(hù)可以選擇要處理的文件。
這就是C# 中在目錄層次結(jié)構(gòu)中搜索文件以查找目標(biāo)字符串的示例的工作 原理。啟動(dòng)時(shí),它會(huì)檢查其命令行參數(shù)。如果程序有多個(gè)參數(shù),它會(huì)將第二個(gè)參數(shù)放在您輸入搜索起始目錄的文本框中。
這使得開(kāi)始搜索變得更容易。只需將文件夾拖到可執(zhí)行程序上或通過(guò)“發(fā)送到”菜單將其發(fā)送到此程序即可。

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#監(jiān)聽(tīng)txt文檔獲取新數(shù)據(jù)方式
文章介紹通過(guò)監(jiān)聽(tīng)txt文件獲取最新數(shù)據(jù),并實(shí)現(xiàn)開(kāi)機(jī)自啟動(dòng)、禁用窗口關(guān)閉按鈕、阻止Ctrl+C中斷及防止程序退出等功能,代碼整合于主函數(shù)中,供參考學(xué)習(xí)2025-07-07
C# string轉(zhuǎn)換為幾種不同編碼的Byte[]的問(wèn)題解讀
這篇文章主要介紹了C# string轉(zhuǎn)換為幾種不同編碼的Byte[]的問(wèn)題解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
C#數(shù)據(jù)結(jié)構(gòu)與算法揭秘四 雙向鏈表
上節(jié)說(shuō)過(guò)這節(jié)會(huì)講雙向鏈表,環(huán)形鏈表和應(yīng)用舉例,我們開(kāi)始吧?。。?!2012-11-11
c#同步兩個(gè)子目錄文件示例分享 兩個(gè)文件夾同步
這篇文章主要介紹了使用c#同步兩個(gè)子目錄文件的方法,大家參考使用吧2014-01-01
DevExpress實(shí)現(xiàn)TreeList向上遞歸獲取公共父節(jié)點(diǎn)的方法
這篇文章主要介紹了DevExpress實(shí)現(xiàn)TreeList向上遞歸獲取公共父節(jié)點(diǎn)的方法,需要的朋友可以參考下2014-08-08
C#中使用@聲明變量示例(逐字標(biāo)識(shí)符)
這篇文章主要介紹了C#中使用@聲明變量示例(逐字標(biāo)識(shí)符)在C#中,@符號(hào)不僅可以加在字符串常量之前,使字符串不作轉(zhuǎn)義之用,還可以加在變量名之前,使變量名與關(guān)鍵字不沖突,這種用法稱(chēng)為“逐字標(biāo)識(shí)符”,需要的朋友可以參考下2015-06-06

