在C#中将字符串转换为布尔值

时间:2018-03-31 17:54:51

标签: c# boolean

我需要帮助将字符串转换为bool值:

我一直试图从我的程序的TopMost获取值(true或false)并将其保存在我的设置中。

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

我的设置'tm'的类型是bool值(true,false) 但我只是在短时间内使用C#而且我不确定如何保存我的TopMost是真还是假。

在你说在属性中使用它之前,它是一个用户选项;我希望他们能够选择是(on)(true)还是off(false),但是将它保存并加载为bool值。

2 个答案:

答案 0 :(得分:4)

我知道这不是一个理想的问题,但由于OP似乎是一个初学者,我喜欢与他分享一些基本知识......希望每个人都理解

OP,您可以使用以下任何方法将字符串转换为Boolean类型:

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

 ///or

 bool myboll = Convert.ToBoolean(sample)

bool.Parse需要一个参数,在这种情况下为sample,偶数.ToBool需要一个参数。

您可以使用与TryParse相同的Parse,但不会抛出任何异常:)

  string sample = "false";
  Boolean myBool;

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

请注意,您无法将任何类型的字符串转换为Boolean类型,因为boolean的值只能是TrueFalse

希望你明白:)

答案 1 :(得分:1)

您必须使用某些C#转换系统:

  

string to boolean:True to true

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

boolean to string:true to True

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

//or

string str = mybool.ToString();

bool.Parse期望一个参数在这种情况下是str,偶数。

Convert.ToBoolean需要一个参数。

bool.TryParse需要两个参数,一个条目(str)和一个out(结果)。

如果TryParse为真,则转换正确,否则发生错误

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
}