回答
从C# programming guide on MSDN:
Main方法的参数是一个字符串数组,表示命令行参数
所以,如果我有一个程序(MyApp.exe的)类似这样的:
class Program
{
static void Main(string[] args)
{
foreach (var arg in args)
{
Console.WriteLine(arg);
}
}
}
,我开始在这样的命令行:
MyApp.exe Arg1 Arg2 Arg3
Main方法将会是p该数组包含三个字符串:“Arg1”,“Arg2”,“Arg3”。
如果您需要传递包含空格的参数,请将其包含在引号中。例如:
MyApp.exe "Arg 1" "Arg 2" "Arg 3"
当您需要在运行时将信息传递给应用程序时,通常会使用命令行参数。例如,如果您正在编写将文件从一个位置复制到另一个位置的程序,则可能会将这两个位置作为命令行参数传递。例如:
Copy.exe C:\file1.txt C:\file2.txt
用于传递命令行参数。例如args[0]
会给你第一个命令行参数,如果有的话。
你一定看到过一些从命令行运行的应用程序,并让你传递它们的参数。如果你用C#编写一个这样的应用程序,则数组args
充当所述参数的集合。
该如何处理它们:
static void Main(string[] args) {
foreach (string arg in args) {
//Do something with each argument
}
}
当你运行应用程序,任何命令行参数被解析到一个数组,并传递到你的类的主要方法,请过目:
http://msdn.microsoft.com/en-us/library/cb20e19t(VS.80).aspx
这是为了如果你打算从命令行运行你的应用程序。这些参数可以在args数组中访问。有关更多详细信息,请转至http://www.c-sharpcorner.com/UploadFile/mahesh/CmdLineArgs03212006232449PM/CmdLineArgs.aspx。
这是命令行开关传递给程序的一个数组。例如。如果使用命令“myapp.exe -c -d
”启动程序,则string[] args[]
将包含字符串“-c”和“-d”。
args参数存储用户在运行程序时给出的所有命令行参数。
如果从控制台像这样运行程序:
的Program.exe有4个参数
你args参数将包含四根弦:“有”,“是” ,“4”,和“参数”
下面是如何从args参数访问命令行参数的一个示例:example
继别人的答案,你应该注意的是,参数在C#可选,如果你的应用程序不使用命令行参数。
此代码是完全合法:
internal static Program
{
private static void Main()
{
// Get on with it, without any arguments...
}
}
除了其他的答案。您应该注意到这些参数可以为您提供被拖放到.exe
文件上的文件路径。 即,如果您将文件拖放到.exe
文件中,则应用程序将启动并且arg[0]
将包含已放入其中的文件路径。
class Program
{
static void Main(string[] args)
{
Console.WriteLine(args[0]);
}
}
这将打印放在.exe
文件上的文件的路径。 e.g
C:\用户\ ABC \文档\ Visual Studio的\项目\ MyTestApp \ MyTestApp \ BIN \ MyTestApp.exe
- 1. main(String [] args)不同的String [] args = {.....}?
- 2. 在main方法中,String []与String ... args有什么不同?
- 3. main(String args [])和main(String [] args)之间有区别吗?
- 4. public static void main(String [] args)和public static void main(String args [])之间的区别?
- 5. 在VS中传递Main(string [] args)参数
- 6. 为什么要在public static void main(String [] args)上抛出异常?
- 7. `public static <T> void main(String [] args)`代表什么?
- 8. 为什么Java main()方法接受一个String args数组?
- 9. 如何更改java Main中的String args []的数据类型
- 10. public static void main(String [] args) - 为什么它实际上是静态的?
- 11. c#中static void main(string [] args)和static void main()之间的区别?
- 12. 在Java中,是否有`public static main(String [] args)`的PHP等价物?
- 13. 在C#中写入static void Main(string [] args)是强制的吗?
- 14. JavaFX不调用main(String [] args)方法
- 15. 从其他包开始main(String args [])
- 16. 在C#Main方法中究竟是如何填充'string [] args`?
- 17. C#public void static Main(String [] args){}和public int main(String [] args)两个重载的方法一起工作吗?
- 18. 语法“final String ... args”是什么意思/做什么?
- 19. Java中的String ... args和String []参数有什么区别吗?
- 20. Java中的String []和(String ... args)有什么区别?
- 21. 如何从另一个类(SendMail)运行main(String [] args)
- 22. main(String ... s)和main(String [] s)有什么区别?
- 23. 我还是不明白public static void main(string [] args)
- 24. 为什么我们通常使用public static void main('String [] args')启动程序?
- 25. JAVA main with args
- 26. 什么是String类内部?
- 27. 为什么String类是final?
- 28. 什么是String类型
- 29. 在Servlet中使用的Websocket,是“public static void main(final String [] args)”需要吗?
- 30. Java中var-args的用法是什么?
+1好的详细的解答,使我的努力相形见绌 – andynormancx 2009-02-16 10:02:54