显示.txt文件中的特定行到列表框

时间:2014-05-01 16:25:32

标签: c# listbox text-files

我正在尝试显示我现在存储在数组中的特定行,从文本文件到列表框。

string[] lines = File.ReadAllLines(@"C:\Users\James Dunn\Documents\Visual Studio 2012\Projects\Assignment 2\Assignment 2\MyJukeBox\bin\Debug\Media\Genre.txt");
mediaLibrary[0] = genreListBox;
for (int l = 3; l < lines.Length; l++)
{
   mediaLibrary[0].Items.Add(lines[l]);
}
genreListBox.Items.Add(mediaLibrary[0]);

此代码到目前为止显示除前3行文本之外的所有内容。如何在显示我需要的线后停止它?我尝试在for循环中使用以下内容,但它给了我错误。

int ll = 6; != lines.Length;

我的txt文件就这样排列了

3
2
Other
Big Bad John (1961) - Jimmy Dean.mp3
My Ding A Ling - Chuck Berry.mp3
2
Rap
2pac-ghost.mp3
B.I.G-Spit Your Game.mp3
1
Rock
Linkin park-Numb.mp3

2 个答案:

答案 0 :(得分:0)

如果元素始终位于相同位置,您可以使用Skip()Take()

所以,如果你一直想要第3和第4行你会做

mediaLibrary[0].Items.AddRange(lines.Skip(2).Take(2).ToArray<object>());

答案 1 :(得分:0)

我设法通过使用if语句并添加break来解决我的问题。

{
// Adding first genre title
string[] lines = File.ReadAllLines(@"C:\Users\James Dunn\Documents\Visual Studio 2012\Projects\Assignment 2\Assignment 2\MyJukeBox\bin\Debug\Media\Genre.txt");
for (int l = 3; l < lines.Length; l++)
{
mediaLibrary[0].Items.Add(lines[l]);
if (l == 4)
break;
}
genreTitleTextBox.(mediaLibrary[0]);
}