显示数组中的5个字符串

时间:2014-06-04 13:26:58

标签: c# asp.net arrays loops textbox

我想在一个以字母“F”(var target =“F”;)开头的文件中显示字符串,然后将其打印在 footlockerExistingBlogTextBox 中显示5个字符串/行。保存数组的文件包含多于5个以“F”开头的字符串,因此我只想显示最后5个最新条目。感谢您的帮助。非常感谢。

下方显示我的代码:

var target = "F";
var results = footlockerArray.Where(r => r.StartsWith(target)).Reverse();

foreach (string result in results)
{
    footlockerExistingBlogTextBox.Text += result;
}

for (int i = footlockerArray.Length - 1; i > footlockerArray.Length - 5; i--)
{
    footlockerArray.Reverse();
    footlockerExistingBlogTextBox.Text += footlockerArray[i];
}

2 个答案:

答案 0 :(得分:2)

使用Enumerable.Take,您可以获得如下结果:

var results = footlockerArray.Where(r => r.StartsWith(target))
                             .OrderByDescending(r=> r)
                             .Take(5);

然后,要获得一个由新行分隔的字符串,您可以使用string.Join,如:

footlockerExistingBlogTextBox.Text = string.Join(Environment.NewLine, results);

答案 1 :(得分:1)

反向并使用Take(5):

     footlockerArray
        .Where(o => o.StartsWith("F"))
        .Reverse()
        .Take(5)
        .Reverse()
        .ToList()
        .ForEach(o => footlockerExistingBlogTextBox.Text += o);