web-dev-qa-db-ja.com

C#で文字列をブール値に変換する

文字列をブール値に変換するのに助けが必要です:

プログラムのTopMostから値(trueまたはfalse)を取得し、それを設定に保存しようとしています。

Settings1.Default["tm"] = ;
Settings1.Default.Save();

設定「tm」のタイプはブール値(true、false)ですが、C#を使用しているのは短期間で、TopMostがtrueかfalseかを保存する方法がわかりません。 。

プロパティで使用すると言う前に、それはユーザーオプションです。オン(true)かオフ(false)かを選択できるようにして、ブール値として保存およびロードできるようにしたいと考えています。

これは答えるのに理想的な質問ではないことを知っていますが、OPは初心者のようなので、基本的な知識を彼と共有したいのですが...

OP、以下のいずれかの方法を使用して、文字列をBoolean型に変換できます。

 string sample = "True";
 bool myBool = bool.Parse(sample);

 ///or

 bool myBool = Convert.ToBoolean(sample);

bool.Parseには1つのパラメーターが必要ですが、この場合はsampleです。.ToBooleanにも1つのパラメーターが必要です。

TryParseと同じParseを使用できますが、例外はスローされません:)

  string sample = "false";
  Boolean myBool;

  if (Boolean.TryParse(sample , out myBool))
  {
  }

Booleanの値はBooleanまたはTrueにしかできないため、どのタイプの文字列もFalseに変換できないことに注意してください。

理解してほしい:)

40
Aousaf rashid

C#変換システムのいくつかを使用する必要があります。

文字列からブール値:TrueからTrue

string str = "True";
bool mybool = System.Convert.ToBoolean(str);

ブールから文字列へ:trueからTrue

bool mybool = true;
string str = System.Convert.ToString(mybool);

//or

string str = mybool.ToString();

bool.Parseは、この場合strである1つのパラメータを期待します。

Convert.ToBooleanには1つのパラメータが必要です。

bool.TryParseは、1つのエントリ(str)と1つのout(結果)の2つのパラメータを想定しています。

TryParseがtrueの場合、変換は正しく、それ以外の場合はエラーが発生しました

string str = "True";
bool MyBool = bool.Parse(str);

//Or

string str = "True";
if(bool.TryParse(str, out bool result))
{
   //Correct conversion
}
else
{
     //Incorrect, an error has occurred
}