用户或程序员传递给Main()方法的参数称为命令行参数。 Main()方法是程序执行的入口点。 Main()方法接受字符串数组。但是它从不接受程序中任何其他方法的参数。在C#中,通过以下方式将命令行参数传递给Main()方法:
static void Main(string[] args)
or
static int Main(string[] args)
注意:要在Windows Forms Application的Main方法中启用命令行参数,必须在program.cs中手动修改Main的签名。 Windows窗体设计器将生成代码并创建没有输入参数的Main。也可以使用Environment.CommandLine或Environment.GetCommandLineArgs从控制台或Windows应用程序的任何位置访问命令行参数。
例子:
// C# program to illustrate the
// Command Line Arguments
using System;
namespace ComLineArg
{
class Geeks {
// Main Method which accepts the
// command line arguments as
// string type parameters
static void Main(string[] args)
{
// To check the length of
// Command line arguments
if(args.Length > 0)
{
Console.WriteLine("Arguments Passed by the Programmer:");
// To print the command line
// arguments using foreach loop
foreach(Object obj in args)
{
Console.WriteLine(obj);
}
}
else
{
Console.WriteLine("No command line arguments found.");
}
} }
}
要编译并执行上述程序,请执行以下命令:
Compile: csc Geeks.cs
Execute: Geeks.exe Welcome To GeeksforGeeks!
输出 :
Arguments Passed by the Programmer:
Welcome
To
GeeksforGeeks!
在上面的程序中,Length用于查找命令行参数的数量,命令行参数将存储在args []数组中。借助Convert类和解析方法,还可以将字符串参数转换为数字类型。举些例子:
long num = Int64.Parse(args[0]);
or
long num = long.Parse(args[0]);
这将通过使用Parse方法将字符串更改为长类型。也可以使用C#类型long,该别名为Int64。同样,可以使用C#中的预定义解析方法进行解析。
参考: https : //docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/main-and-command-args/command-line-arguments