Arguments に ParameterSwitches の文字列が含まれているかどうかを確認したい。その場合は、Arguments から削除する必要があります。
問題は、pSwitch が Arguments[i] と同じ値を持っていても、条件が成立せず、Arguments[i] = null; であることです。実行されません。
デバッガーで段階的に試してみましたが、私の仮定が確認されたため、さらに混乱しました。
string[] Arguments = new string[]{/*some strings*/};
string[] ParameterSwitches = new string[]{/*some strings*/};
for (int i = 0; i < Arguments.Length; i++)
{
foreach (string pSwitch in ParameterSwitches)
{
if (pSwitch == Arguments[i])
{
Arguments[i] = null;
}
}
}
誰もがこれが起こる方法を想像できますか?
前もって感謝します
更新: ああ、みんな... 次回は、ここで質問する前にメガネを使用します。弦の 1 つの後に小さな空白がありました。それが問題でした。トリミングはうまくいきました。
if (String.Equals(pSwitch.Trim().ToUpper(), Arguments[i].Trim().ToUpper()))
{
Arguments[i] = null;
}
"問題が解決しました