将字符串与数字进行比较

本文关键字:比较 数字 字符串 | 更新日期: 2023-09-27 18:25:21

我试图将文本文件的内容与一个没有成功的硬数字进行比较:

string version = File.ReadAllText("C:''version.txt");
if (version > 1)
{
   MessageBox.Show("Update Available!");
}

我在这里做错了什么?

将字符串与数字进行比较

不能将字符串与数字进行比较,必须首先对其进行解析。您可以使用int.Parseint.TryParse(检查格式是否有效):

int number;
if(int.TryParse(version, out number) && number > 1)
{
    MessageBox.Show("Update Available!");
}

如果数字也可以是1.23,则可以使用double.Parsedecimal.Parse

您必须解析版本:

if (int.Parse(version) > 1)
{
}

或者另一种方式:

if(version.ToString() > "1")
{ 
   //be careful with this as it compares two numbers using dictionary sort, e.g. "200" is less than "3"
}

C#是一种强类型语言。不能对不兼容的类型执行操作。Int和string不兼容,因此您必须将其中一个转换为另一个才能进行操作。