List<string> AllPublishers(List<Book> books)
{
List<string> publishers = new List<string>();
foreach (Book book in books)
{
if (!publishers.Contains(book.Publisher))
{
publishers.Add(book.Publisher);
}
}
return Publishers;
}
void PublishersList(List<Book> books)
{
string[] lines = new string[books.Count];
for (int i = 0; i < books.Count; i++)
{
lines[i] = String.Format("{0}", books[i].);
}
File.WriteAllLines(@"Publishers.csv", lines);
}
嘿,我的项目只需要最后一段,所以请尝试完成它。因此,如果发布者相同,则上面的代码应仅打印出一个发布者,但是它将打印出从数据文件中读取的所有发布者。
例如:
给出的数据为(书名;出版商):
现在如何打印:
以及如何打印:
感谢帮助人员,希望您度过一个愉快的一天/夜晚。
答案 0 :(得分:2)
在PublishersList
中,我猜测您需要以下内容:
var publisherList = AllPublishers(books);
实际获得出版商。然后,在该方法的其余部分中,使用publisherList
代替book
。
string[] lines = new string[publisherList.Count];
for (int i = 0; i < publisherList.Count; i++)
{
lines[i] = String.Format("{0}", publisherList[i].);
}
File.WriteAllLines(@"Publishers.csv", lines);
就目前而言,您只是在books
列表上进行迭代,这就是为什么您获得相同的发布者输出的原因。