Udostępnij za pośrednictwem


Argumenty wiersza polecenia (Podręcznik programowania C#)

Main Metody można używać argumentów, w którym to przypadku przyjmuje jedną z następujących form:

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

[!UWAGA]

Aby włączyć argumentów wiersza polecenia w Main metody w aplikacji Windows Forms należy ręcznie zmodyfikować podpis Main w plik program.cs.Tworzy kod generowany przez projektanta Windows Forms Main bez parametru wejściowego.Można również użyć Environment.CommandLine lub Environment.GetCommandLineArgs dostęp do argumentów wiersza polecenia z dowolnego punktu w konsoli lub aplikacji systemu Windows.

Parametr Main jest metoda String tablicy, która reprezentuje argumentów wiersza polecenia.Zazwyczaj można stwierdzić, czy argumenty przez badania Length właściwość, na przykład:

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

Można także konwertować argumentów typu string na typy liczbowe, za pomocą Convert klasy lub Parse metody.Na przykład, następująca instrukcja konwertuje string do long numer za pomocą Parse metody:

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

Istnieje również możliwość użycia typu C# long, które aliasy Int64:

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

Można również użyć Convert klasy metoda ToInt64 , aby zrobić to samo:

long num = Convert.ToInt64(s);

Aby uzyskać więcej informacji, zobacz Parse i Convert.

Przykład

Poniższy przykład pokazuje, jak używać argumentów wiersza polecenia w aplikacji konsoli.Program ma jeden argument w czasie wykonywania, konwertuje argument na liczbę całkowitą i oblicza wartooć silni liczby.Jeśli argumenty nie są dostarczane, program wystawia komunikat wyjaśniający poprawne użycie programu.

[!UWAGA]

Podczas działania aplikacji w programie Visual Studio, można określić argumenty wiersza polecenia w Debugowanie strony, Projektant projektu.

Aby uzyskać więcej przykładów na temat argumentów wiersza polecenia, zobacz Jak: tworzenie i używanie zestawów przy użyciu wiersza polecenia (C# i Visual Basic).

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.

Zobacz też

Zadania

Jak: wyświetlanie argumenty wiersza polecenia (Podręcznik programowania C#)

Jak: foreach używając argumentów wiersza polecenia programu Access (C# Programming Guide)

Informacje

Wartości zwracane main() (Podręcznik programowania C#)

Klasy (Podręcznik programowania C#)

System.Environment

Koncepcje

Podręcznik programowania C#

Main() i argumenty wiersza polecenia (Podręcznik programowania C#)