gpt4 book ai didi

c# - 如何在c#中按高分对存储在文本文件中的数据进行排序

转载 作者:太空宇宙 更新时间:2023-11-03 12:05:08 24 4
gpt4 key购买 nike

我正在为我的计算机类(class)做一个问答游戏,我已经完成了我的应用程序的测验部分,我目前正在进入我的排行榜,但要做到这一点,我需要对包含用户名的分数文本文件进行排序、分数和时间,但我现在正在尝试检索这些数据并将它们显示在表格中。

用户的姓名分数和时间可以很好地保存到分数文本文件中,但要显示这些详细信息,我首先需要按分数对这些详细信息进行排序。

我的测试文件是这样组织的:

username,score,time

userName1,33,12
userName2,-55,33
userName3,34,2
userName4,23,27
userName5,63,72

这是我目前正在使用的代码,但只有当我首先对文本文件中的数据进行排序时,它才有效。

string[] readFile = File.ReadAllLines(file).ToArray();

for (int i = 0; i < 5; i++)
{
string[] userDetails = File.ReadAllLines(file).ToArray();

string username = userDetails[0];
string score = userDetails[1];

// Apply the text of lblUsername1-5 to be what the names
// of the top 5 scorers are in the file.
lblUsername1.Text = userDetails[0].Split(',')[0];
lblUsername2.Text = userDetails[1].Split(',')[0];
lblUsername3.Text = userDetails[2].Split(',')[0];
lblUsername4.Text = userDetails[3].Split(',')[0];
lblUsername5.Text = userDetails[4].Split(',')[0];

// Apply the text of lblScore1-5 to be what the scores
// of the top 5 scorers are in the file.
lblScore1.Text = userDetails[0].Split(',')[1];
lblScore2.Text = userDetails[1].Split(',')[1];
lblScore3.Text = userDetails[2].Split(',')[1];
lblScore4.Text = userDetails[3].Split(',')[1];
lblScore5.Text = userDetails[4].Split(',')[1];
}

因此,如果有人可以帮助我对乐谱 ext 文件中的数据进行排序,那就太好了。提前致谢。

最佳答案

您可以使用 linq 对文件中的数据进行排序

string[][] userDetails = File.ReadAllLines(file).Select(s => s.Split(',')).OrderBy(arr => int.TryParse(arr[1], out int result) ? result : 0)).Take(5).ToArray();

lblUsername1.Text = userDetails[0][0];
lblUsername2.Text = userDetails[1][0];
lblUsername3.Text = userDetails[2][0];
lblUsername4.Text = userDetails[3][0];
lblUsername5.Text = userDetails[4][0];

// Apply the text of lblScore1-5
// to be what the scores of the top 5 scorers are in the file.
lblScore1.Text = userDetails[0][1];
lblScore2.Text = userDetails[1][1];
lblScore3.Text = userDetails[2][1];
lblScore4.Text = userDetails[3][1];
lblScore5.Text = userDetails[4][1];``

关于c# - 如何在c#中按高分对存储在文本文件中的数据进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55434310/

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