Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menghuraikan hujah baris perintah dalam C#?

Bagaimana cara menghuraikan hujah baris perintah dalam C#?

Barbara Streisand
Barbara Streisandasal
2025-01-31 15:16:08718semak imbas

How to Efficiently Parse Command-Line Arguments in C#?

Kaedah analisis yang cekap bagi parameter baris baris arahan

Apabila membangunkan aplikasi konsol yang menerima parameter baris perintah, adalah penting untuk menggunakan parameter secara berkesan yang diluluskan kepada

. Ramai pemaju pada mulanya menggunakan indeks dan parameter pemprosesan teknikal yang beredar. Walau bagaimanapun, apabila struktur arahan menjadi semakin rumit, kaedah ini akan menyebabkan kod itu menjadi janggal.

Main(string[] args) Untuk menghadapi cabaran ini, meneroka perpustakaan dan model yang berkesan sangat penting:

Perpustakaan:

ndesk.ouptions: Menyediakan satu set pilihan komprehensif untuk analisis parameter yang mudah dan berkuasa. API yang lancar memudahkan definisi peraturan analisis, dan menyediakan pilihan untuk memaparkan maklumat bantuan.

    mono.options:
  • mempunyai API yang sama seperti ndesk.Options, menyediakan pilihan yang serasi untuk persekitaran berasaskan mono.
  • ndesk.Options Gunakan Contoh:
  • Serpihan kod berikut menunjukkan cara menggunakan ndesk.options untuk menghuraikan parameter baris arahan:

Kod ini mentakrifkan empat pilihan:

: Terima parameter rentetan dan tambahkannya ke senarai nama.

: Terima parameter integer dan berikannya kepada pemboleh ubah berulang.
<code class="language-csharp">bool show_help = false;
List<string> names = new List<string>();
int repeat = 1;

var p = new OptionSet()
{
    { "n|name=", "问候对象的姓名。", v => names.Add(v) },
    { "r|repeat=", "重复问候的次数(必须为整数)。", (int v) => repeat = v },
    { "v", "提高调试消息的详细程度", v => { if (v != null) ++verbosity; } },
    { "h|help", "显示此消息并退出", v => show_help = v != null }
};

List<string> extra;
try
{
    extra = p.Parse(args);
}
catch (OptionException e)
{
    Console.Write("greet: ");
    Console.WriteLine(e.Message);
    Console.WriteLine("尝试 `greet --help` 获取更多信息。");
    return;
}</code>

: Jika ditentukan, pemboleh ubah kelebihan meningkat (tiada nilai).

    : Tunjukkan maklumat membantu dan keluar dari aplikasi.
  1. "n|name="
  2. Dengan menyediakan kaedah analisis parameter yang fleksibel dan baik, perpustakaan ini dapat meningkatkan penyelenggaraan dan kebolehbacaan kod.

Atas ialah kandungan terperinci Bagaimana cara menghuraikan hujah baris perintah dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn