En C#, la clase principal tiene el parámetro string [] args.¿Para qué es "string [] args" en Main class?
¿Qué es eso y dónde se usa?
En C#, la clase principal tiene el parámetro string [] args.¿Para qué es "string [] args" en Main class?
¿Qué es eso y dónde se usa?
Desde el C# programming guide on MSDN:
El parámetro del método principal es una matriz de cadenas que representa los argumentos de línea de comandos
Por lo tanto, si tuviera un programa (MyApp.exe) así:
class Program
{
static void Main(string[] args)
{
foreach (var arg in args)
{
Console.WriteLine(arg);
}
}
}
que empecé en la línea de comando como este:
MyApp.exe Arg1 Arg2 Arg3
el método principal sería p Asedió una matriz que contenía tres cadenas: "Arg1", "Arg2", "Arg3".
Si necesita pasar un argumento que contiene un espacio, envuélvalo entre comillas.Por ejemplo:
MyApp.exe "Arg 1" "Arg 2" "Arg 3"
Los argumentos de la línea de comando se suelen utilizar cuando necesita pasar información a su aplicación en tiempo de ejecución. Por ejemplo, si está escribiendo un programa que copia un archivo de una ubicación a otra, probablemente pase las dos ubicaciones como argumentos de línea de comando. Por ejemplo:
Copy.exe C:\file1.txt C:\file2.txt
Para pasar en parámetros de línea de comandos. Por ejemplo, args[0]
le dará el primer parámetro de línea de comando, si hay uno.
Debe haber visto alguna aplicación que se ejecuta desde la línea de comandos y le permite pasar los argumentos. Si escribe una aplicación de este tipo en C#, la matriz args
sirve como la colección de dichos argumentos.
Esta forma de procesarlos:
static void Main(string[] args) {
foreach (string arg in args) {
//Do something with each argument
}
}
Cuando se ejecuta la aplicación, los argumentos de línea de comandos son analizados en una matriz y pasaron en su clase principal método para su lectura:
http://msdn.microsoft.com/en-us/library/cb20e19t(VS.80).aspx
Eso es para si fuera a ejecutar su aplicación desde la línea de comando. Estos parámetros estarán accesibles en la matriz args. Vaya a http://www.c-sharpcorner.com/UploadFile/mahesh/CmdLineArgs03212006232449PM/CmdLineArgs.aspx para más detalles.
Esta es una matriz de los conmutadores de línea de comando que pasan al programa. P.ej. si inicia el programa con el comando "myapp.exe -c -d
", entonces string[] args[]
contendrá las cadenas "-c" y "-d".
El parámetro args almacena todos los argumentos de la línea de comandos que proporciona el usuario cuando ejecuta el programa.
Si ejecuta su programa desde la consola de la siguiente manera:
program.exe hay 4 parámetros
Su parámetro args contendrá las cuatro cuerdas: "no", "son" , "4" y "parámetros"
Aquí es un ejemplo de cómo acceder a los argumentos de línea de comando desde el parámetro args: example
relación con la respuesta de todos los demás, debe tener en cuenta que los parámetros son opcionales en C# si su aplicación no utiliza argumentos de línea de comando.
Este código es perfectamente válido:
internal static Program
{
private static void Main()
{
// Get on with it, without any arguments...
}
}
Además de las otras respuestas. Debería notar que estos argumentos pueden darle la ruta del archivo que fue arrastrada y soltada en el archivo .exe
. es decir, si arrastra y suelta cualquier archivo en su archivo .exe
, se iniciará la aplicación y el arg[0]
contendrá la ruta del archivo que se dejó caer en él.
class Program
{
static void Main(string[] args)
{
Console.WriteLine(args[0]);
}
}
Esto imprimirá la ruta del archivo de caer en el archivo .exe
. por ejemplo
C: \ Users \ abc \ documentos \ Visual Studio \ Projects \ MyTestApp \ MyTestApp \ bin \ MyTestApp.exe
1 buena respuesta detallada, pone mi esfuerzo a la vergüenza – andynormancx