C#网络查找最短和最长的线路

本文关键字:线路 网络 查找 | 更新日期: 2023-09-27 17:59:41

试图查找文本文件中最长和最短的一行。最长的返回正确,但最短的总是空白,有什么想法吗?

        var lines = System.IO.File.ReadLines(@"C:'test.txt");            
        var Minimum = "";
        var Maximum = "";

            foreach (string line in lines)
            {
                if (Maximum.Length < line.Length)
                {
                    Maximum = line;
                }

                if (Minimum.Length > line.Length)
                {
                    Minimum = line;
                }
           }

C#网络查找最短和最长的线路

您正在设置var Minimum = "";,因为它的长度将为0,所以它永远不会超过文件中的任何一行。将第一行设置为循环前的最小值:

var Minimum = lines[0];

不使用循环。。

Maximum = lines.OrderByDescending(a => a.Length).First().ToString();
Minimum = lines.OrderBy(a => a.Length).First().ToString();

最小长度最初为0。即

Minimum.Length > line.Length

将永远不会变为真,因为所有行的line.Length >= 0

解决方案:在迭代之前,应该用第一行初始化Mimimum