c#比较从两个文件中获得的两个数字

c#比较从两个文件中获得的两个数字,c#,C#,在c#中,我需要比较两个数字,一个来自本地文件,另一个来自下载文件(如修补程序) 如果我使用Streamreader c#很遗憾他不能将字符串转换成INT 有解决办法吗? 文件a包含值“1”,文件b包含值“2” 因此,如果b>a,则从另一个更新程序文件下载新文件捕获 谢谢尝试使用Convert.ToInt32方法。 如果您的文件只包含一个数字,您可以使用file.ReadAllLine方法,而不是streamreader。如果这是文件中唯一的数字,您可以使用file.ReadAllText(或多

在c#中,我需要比较两个数字,一个来自本地文件,另一个来自下载文件(如修补程序)

如果我使用Streamreader c#很遗憾他不能将字符串转换成INT

有解决办法吗? 文件a包含值“1”,文件b包含值“2”

因此,如果b>a,则从另一个更新程序文件下载新文件捕获


谢谢

尝试使用Convert.ToInt32方法。
如果您的文件只包含一个数字,您可以使用file.ReadAllLine方法,而不是streamreader。

如果这是文件中唯一的数字,您可以使用
file.ReadAllText
(或多行文件中的
file.ReadAllLines
)并转换为
int
,如下所示:

string[] lines = File.ReadAllLines(@"c:\t.txt");
int number = Convert.ToInt32(lines[0]);

您是如何尝试转换为int的?你看绳子了吗?可能包含控制字符?您能显示用于读取数字的代码吗?包括其中一个文件的确切内容?TK,刚刚测试过。这个解决方案让我管理两个文件一个带有复制和粘贴代码的答案,而不做任何解释,这可能有助于OP解决他们当前的问题,但可能无法帮助他们理解如何解决这个问题和类似的问题。对于那些有类似问题但不是相同问题的未来访问者来说,情况更是如此,他们根本无法从复制粘贴答案中获益。@David/更新您的答案以包含解释,您可能会撤销您的否决票,因为我认为这是一段不错的代码。
void CompareVersions()
{
    WebClient client = new WebClient();
    var serverVersion = client.DownloadString("http://yourwebsite.com/version.txt");

    using (StreamReader sr = new StreamReader("file.txt"))
    {
        if (Convert.ToInt32(serverVersion) > Convert.ToInt32(sr.ReadLine()))
        {
            // server version bigger
        }
        else
        {
            // up to date
        }
    }
}