比较两个字符串值[关闭]

问题描述 投票:4回答:6

我想比较两个字符串值,如下所示:

if (lblCapacity.Text <= lblSizeFile.Text)

我该怎么做?

c# string compare
6个回答
23
投票

我假设您正在比较lexicographical order中的字符串,在这种情况下,您可以使用Static方法String.Compare。

例如,你有两个字符串str1和str2,你想看看str1是否在字母表中的str2之前。您的代码如下所示:

string str1 = "A string";
string str2 = "Some other string";
if(String.Compare(str1,str2) < 0)
{
   // str1 is less than str2
   Console.WriteLine("Yes");
}
else if(String.Compare(str1,str2) == 0)
{
   // str1 equals str2
   Console.WriteLine("Equals");
}
else
{
   // str11 is greater than str2, and String.Compare returned a value greater than 0
   Console.WriteLine("No");
}

上面的代码将返回yes。 String.Compare有许多重载版本,包括一些你可以忽略大小写或使用格式字符串的版本。看看String.Compare


5
投票
int capacity;
int fileSize;

if (!int.TryParse(lblCapacity.Text, out capacity) //handle parsing problem;
if (!int.TryParse(lblSizeFile.Text, out fileSize) //handle parsing problem;

if (capacity <= fileSize) //... do something.

2
投票

如果你在文本框中有整数,那么,

int capacity;
int fileSize;

if(Int32.TryParse(lblCapacity.Text,out capacity) && 
   Int32.TryParse(lblSizeFile.Text,out fileSize))
{
    if(capacity<=fileSize)
    {
        //do something
    }
}

1
投票

看起来标签包含数字。然后你可以尝试Int32.Parse

if (int.Parse(lblCapacity.Text) <= int.Parse(lblSizeFile.Text))

当然,您可能想要添加一些错误检查(查看Int32.TryParse并将解析的int值存储在某些变量中,但这是基本概念。


1
投票

比较是你需要的。

int c = string.Compare(a , b);

0
投票

使用Int32.ParseInt32.TryParse或其他等效物。然后,您可以在数字上比较这些值。

© www.soinside.com 2019 - 2024. All rights reserved.