5

コマンド ライン引数を取得する .NET コンソール アプリケーションを作成しました。

空白を含む引数を渡すときは、引用符を使用してこれらの引数を受け入れ、cmd によって分割されないようにします。

C:\MyAppDir> MyApp argument1 "argument 2" "the third argument"

Windows XP でアプリを実行すると、正常に動作します。3 つの引数を取得します。

  • 引数1
  • 引数 2
  • 3 番目の引数

ただし、Windows Server 2008 で実行すると、引用符を無視するように見えます。6 つの引数を取得します。

  • 引数1
  • "口論
  • 2"
  • 三番
  • 口論"

理由はありますか?

注: Main がこのコードを使用して実行を開始したときに引数を出力しました。

Console.WriteLine("Command line arguments:");
foreach (string arg in args)
{
    Console.WriteLine("# " + arg);
}
4

3 に答える 3

9

入力している文字が実際に二重引用符であることを確認してください ".

似てるキャラなのかな。

ギリシャ語の設定で " が生成されることはわかっていますが、そのようには読み取られません。

于 2012-05-11T09:43:18.880 に答える
1

是非お試しください。

C:\MyAppDir> MyApp 引数 1 \"引数 2\" \"3 番目の引数\"

于 2016-12-26T12:50:01.710 に答える