c# 字符串转为bool类型

来源:百度知道 编辑:UC知道 时间:2024/05/24 10:22:35
我有个字符串s="2>1",我怎么判断它是否成立,
我用了bool.Parse(s);怎么不行呢?
请高手赐教!!!
Convert.ToBoolean( "2 > 1" );
也不能判断字符串"2 > 1" 是否成立!
请高手赐教!!

bool s = Convert.ToBoolean(2>1);
Console.WriteLine(s);

肯定不能判断啊 无论是bool.parse(string value)还是convert.toboolean(string value)这里的value注意看提示说明是指
trueString和FalseString,说白了是True和false
你可以定义Convert.toBoolean("True")但是却不能定义Convert.toBoolean("1");

Convert.ToBoolean(2>1)和 Convert.ToBoolean("2>1")是完全两种不同的概念2>1是逻辑表达式,>是运算符,计算机先运算后得到逻辑判定结果True or False然后才进行的类型转换 可以测试下Convert.ToString(2>1)看看输出是什么?是不是"True",而"2>1"是字符串 你如何让计算机理解呢? > 是运算符?还是程序员输进去需要输出的字串?

所以我理解认为s = "2>1"如果不做任何处理直接寄希望于计算机做判断是不太可能的就像我输入s = "if(a){MessageBox.Show("1");};MessageBox.Show("2");"输出的结果也就是我输进去的字串,而不会弹个对话框给我...

我不明白楼主为何要这样做?

字符串是无法转换成bool类型的。。

就算有其他办法进行转换,这种实现的方法也不是很好和合理的方法,建议LZ换个思维去做。