Sdílet prostřednictvím


Argumenty příkazového řádku (Průvodce programováním v C#)

Argumenty můžete poslat do metody Main definováním metody jedním z následujících způsobů:

static int Main(string[] args)
static void Main(string[] args)

[!POZNÁMKA]

Chcete-li povolit argumenty příkazového řádku v metodě Main v aplikaci Windows Forms, je nutné ručně upravit podpis Main v program.cs.Kód generovaný v návrháři Windows Forms vytvoří Main bez vstupního parametru.Můžete také použít Environment.CommandLine nebo Environment.GetCommandLineArgs pro přístup k argumentům příkazového řádku z jakéhokoli místa v konzole nebo aplikace systému Windows.

Parametr metody Main je pole String, které představuje argumenty příkazového řádku.Obvykle zjistíte, zda existují argumenty testováním vlastnosti Length, například:

if (args.Length == 0)
{
    System.Console.WriteLine("Please enter a numeric argument.");
    return 1;
}

Můžete také převést řetězcové argumenty pro číselné typy s použitím třídy Convert nebo metody Parse.Například následující výraz převede string na číslo long pomocí metody Parse:

long num = Int64.Parse(args[0]);

Je také možné použít typ jazyka C# long využívající aliasu Int64:

long num = long.Parse(args[0]);

Můžete také použít metodu třídu Convert metody ToInt64 chcete-li provést stejnou akci:

long num = Convert.ToInt64(s);

Další informace naleznete v tématu Parse a Convert.

Příklad

Následující příklad ukazuje, jak použít argumenty příkazového řádku v konzolové aplikaci.Aplikace přijímá jeden argument za běhu, převede argument na celé číslo a vypočítá faktoriál čísla.Pokud nejsou dodány žádné argumenty, aplikace vydá zprávu, která vysvětluje správné použití programu.

Pro zkompilování a spuštění aplikace z příkazového řádku, postupujte následovně:

  1. Vložte následující kód do libovolného textového editoru a uložte jej jako textový soubor s názvem Factorial.cs.

    //Add a using directive for System if the directive isn't already present. 
    
    public class Functions
    {
        public static long Factorial(int n)
        {
            // Test for invalid input 
            if ((n < 0) || (n > 20))
            {
                return -1;
            }
    
            // Calculate the factorial iteratively rather than recursively: 
            long tempResult = 1;
            for (int i = 1; i <= n; i++)
            {
                tempResult *= i;
            }
            return tempResult;
        }
    }
    
    class MainClass
    {
        static int Main(string[] args)
        {
            // Test if input arguments were supplied: 
            if (args.Length == 0)
            {
                System.Console.WriteLine("Please enter a numeric argument.");
                System.Console.WriteLine("Usage: Factorial <num>");
                return 1;
            }
    
            // Try to convert the input arguments to numbers. This will throw 
            // an exception if the argument is not a number. 
            // num = int.Parse(args[0]); 
            int num;
            bool test = int.TryParse(args[0], out num);
            if (test == false)
            {
                System.Console.WriteLine("Please enter a numeric argument.");
                System.Console.WriteLine("Usage: Factorial <num>");
                return 1;
            }
    
            // Calculate factorial. 
            long result = Functions.Factorial(num);
    
            // Print result. 
            if (result == -1)
                System.Console.WriteLine("Input must be >= 0 and <= 20.");
            else
                System.Console.WriteLine("The Factorial of {0} is {1}.", num, result);
    
            return 0;
        }
    }
    // If 3 is entered on command line, the 
    // output reads: The factorial of 3 is 6.
    
  2. Z obrazovky Start nebo nabídky Start otevřete okno Visual Studio Developer Command Prompt a pak přejděte do složky obsahující soubor, který jste právě vytvořili.

  3. Zadejte následující příkaz pro kompilaci aplikace.

    csc Factorial.cs

    Pokud aplikace neobsahuje žádné chyby během kompilace, je vytvořen spustitelný soubor s názvem Factorial.exe.

  4. Zadejte následující příkaz pro výpočet faktoriálu 3:

    Factorial 3

  5. Příkaz vytvoří tento výstup: The factorial of 3 is 6.

[!POZNÁMKA]

Při spuštění aplikace v aplikaci Visual Studio můžete zadat argumenty příkazového řádku v Stránka Ladění, návrhář projektu.

Další příklady o tom, jak používat argumenty příkazového řádku naleznete v tématu Postupy: Vytváření a použití sestavení s pomocí příkazového řádku (C# a Visual Basic).

Viz také

Úkoly

Postupy: Zobrazení argumentů příkazového řádku (Průvodce programováním v C#)

Postupy: Přístup k argumentům příkazového řádku pomocí příkazu foreach (Průvodce programováním v C#)

Referenční dokumentace

Návratové hodnoty Main() (Průvodce programováním v C#)

Třídy (Průvodce programováním v C#)

Environment

Koncepty

Průvodce programováním v C#

Argumenty Main() a příkazového řádku (Průvodce programováním v C#)