آرگومان های خط فرمان (Command Line Arguments)

برای اجرای موفق یک برنامه سی شارپی باید یک متد مهم به نام متد ()Main وجود داشته باشد که نقطه آغاز برنامه است. این متد باید به صورت public static تعریف شود. همه ما می دانیم که برای متدها می‌توان آرگومان ارسال کرد، اما برای متد Main(string[] args) چطور؟ جواب مثبت است. شما می‌توانید از طریق دستور خط فرمان ویندوز یا همان CMD آرگومان‌هایی را برای این متد ارسال کنید. برای روشن شدن مطلب یک برنامه کنسول به نام Sample ایجاد کنید، سپس کدهای برنامه را به صورت زیر بنویسید :

using System;

namespace Sample
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("First Name is " + args[0]);
            Console.WriteLine("Last  Name is " + args[1]);
            Console.ReadLine();
        }
    }
}

برنامه را یک بار اجرا و ذخیره کنید (ممکن است با پیغام خطا مواجه شوید ولی مهم نیست). به پارامتر args توجه کنید. در حقیقت این پارامتر یک آرایه رشته‌ای است که می‌تواند چندین آرگومان از نوع رشته قبول کند. اگر برنامه‌تان را ایجاد کرده و به فایل با پسوند exe. دسترسی داشته باشید می‌توانید پارامترهای رشته‌ای را به متد ()Main ارسال کنید. فایل Sample.exe را که در پوشه Debug برنامه‌تان است را به یک درایو یا پوشه مشخص که مسیر گیج کننده‌ای نداشته باشد انتقال دهید. در این مثال ما فایل Sample.exe را مستقیماً در درایو C قرار می‌دهیم. حال CMD ویندوز را اجرا کنید، سپس کدهای زیر (خطوط قرمز) را در داخل CMD نوشته و دکمه Enter را بزنید :

Microsoft Windows[Version 6.1.7601]
Copyright(c) 2009 Microsoft Corporation.All rights reserved.

C:\Users\VisualCsharp>cd/

C:\>Sample Steven Clark
First Name is Steven
Last  Name is Clark

با نوشتن نام فایل، باعث اجرای آن می‌شویم. بعد از نوشتن نام فایل کلمه Steven و سپس عدد Clark را می‌نویسیم. همانطور که در کد مشاهده می‌کنید ما دو متغیر به نام‌های args[0] و args[1] تعریف کرده‌ایم. این دو متغیر به ترتیب خانه‌های اول و دوم آرایه هستند. کلمه Steven در متغیر رشته‌ای args[0] که اولین عنصر آرایه و کلمه Clark را در متغیر رشته‌ای args[1] که دومین عنصر آرایه است ذخیره و سپس با استفاده از متد ()WriteLine آن‌ها را چاپ می‌کنیم. در حقیقت بسیاری از برنامه‌ها از این تکنیک استفاده می‌کنند. شما می‌توانید با ارسال آرگومان‌هایی به متد ()Main نحوه اجرای برنامه را تغییر دهید.