在控制台应用程序中读取命令行参数的最佳方法
时间:2020-03-05 18:58:46 来源:igfitidea点击:
以下是两种读取命令行参数的方法。第一种是我习惯使用main中的参数的方式。我在查看代码时偶然发现了第二个。我注意到,第二个将数组中的第一项分配给路径和应用程序,但第一个跳过了这一点。
现在只是偏爱还是第二种更好的方法?
Sub Main(ByVal args() As String) For i As Integer = 0 To args.Length - 1 Console.WriteLine("Arg: " & i & " is " & args(i)) Next Console.ReadKey() End Sub
Sub Main() Dim args() As String = System.Environment.GetCommandLineArgs() For i As Integer = 0 To args.Length - 1 Console.WriteLine("Arg: " & i & " is " & args(i)) Next Console.ReadKey() End Sub
我认为可以在C#中完成相同的操作,因此不一定是vb.net问题。
解决方案
回答
第二种方法更好,因为它可以在main()之外使用,因此在重构时,要考虑的事情少了一点。
我也不喜欢第一种方法将args放入method参数的"魔术"。
回答
第一种方法更好,因为它更简单。
回答
你知道getopt吗? Con Codeplex有一个端口:http://www.codeplex.com/getopt
回答
对我来说,第一种方法似乎更直观,因为自从C / C ++时代以来,这就是我一直在做的事情。
如果命令行开关太多,请查看Thomas建议的getopt。这很有用。我没看过同样的Cport。
问候,
公斤