gpt4 book ai didi

C# 对具有分隔符的文本文件从高到低进行排序

转载 作者:行者123 更新时间:2023-12-03 23:00:16 27 4
gpt4 key购买 nike

我正在尝试构建一个控制台应用程序,以从高到低的顺序对指定文本文件中的日志进行排序。

日志示例:

Sheila Moore | 0001:05912 | BSIT | Number: 20
Jake Aloma | 0001:05913 | BSIT | Number: 21
Julius Cesar | 0001:05915 | BSIT | Number: 22

我想对它们进行排序,并根据最后一个“Number”从高到低写入行。

这是我到目前为止已经完成的代码,但它没有达到我想要实现的目标。

string[] lists = File.ReadAllLines(file.txt);

foreach (string log in lists.OrderBy(x => x.Split('|').Last()))
{
Console.WriteLine(log);
}

我想要达到的结果是:

Julius Cesar | 0001:05915 | BSIT | Number: 22
Jake Aloma | 0001:05913 | BSIT | Number: 21
Sheila Moore | 0001:05912 | BSIT | Number: 20

按降序排列。我不知道 OrderBy 方法是否是此类任务的最佳方法。

任何帮助将不胜感激:)谢谢!

最佳答案

//this will use MUCH less memory
var lines = File.ReadLines("file.txt");

foreach (string log in lines.OrderBy(x => Convert.ToInt32(x.Split('|').Last().Replace("Number: ", "").Trim()) * -1))
{
Console.WriteLine(log);
}

关于C# 对具有分隔符的文本文件从高到低进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54312621/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com