如何获取字符串长度从最小到最大 C#



底部是txt文件中的行读取,单词之间用空格分隔(" "( 如何排序并返回从最小到最大的长度?

这就是我现在拥有的 - 单击链接:

图片链接

代码

if (System.IO.File.Exists(textFile))
{
using (System.IO.StreamReader file = new System.IO.StreamReader(textFile))
{
int counter = 0;
string words; 
string[] line;
while ((words = file.ReadLine()) != null)
{
line = Regex.Split(words, " ");
foreach (string line_1 in line)
{
Console.WriteLine(line_1 + " " + line_1.Length);
}
Console.WriteLine(" ");
counter++;
Console.WriteLine("Line[{1}]: {0}n", words, counter);
}
file.Close();
Console.WriteLine(" ");
Console.WriteLine("File has [{0}] Lines.", counter);
}
} 

使用 Linq,您将获得最小和最大长度,如下所示。

var min = words.Split(' ').Min(s => s.Length);
var max = words.Split(' ').Max(s => s.Length);

如果您需要按排序的所有单词,请使用以下内容。

var sortedList = words.Split(' ').Select(s=>new {Word=s,WordLength=s.Length }).OrderBy(o=>o.WordLength);

相关内容

  • 没有找到相关文章

最新更新