📅  最后修改于: 2023-12-03 15:25:11.736000             🧑  作者: Mango
在C#应用程序中,有时需要将对象的列表转换为CSV格式的文件。在本教程中,我们将学习如何使用C#将对象列表转换为CSV格式的文件。我们还将演示如何为CSV数据添加标题。
CSV文件是以逗号分隔的值文件。每行表示一条记录,每列表示该记录的不同属性。例如,以下是一个CSV文件示例:
Name,Age,Gender
John,25,Male
Jane,30,Female
在上面的示例中,Name,Age和Gender是标题,表示每个记录的属性。每个记录均由逗号分隔的三个值构成,即Name,Age和Gender。
下面是一个将对象列表转换为CSV文件的简单方法。假设有一个名为Person的类,它有三个属性:Name,Age和Gender。
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public string Gender { get; set; }
}
现在,我们生成一些人员数据,并将它们存储在Person列表中:
List<Person> persons = new List<Person>()
{
new Person() { Name = "John", Age = 25, Gender = "Male" },
new Person() { Name = "Jane", Age = 30, Gender = "Female" },
new Person() { Name = "Jim", Age = 35, Gender = "Male" }
};
要将此列表转换为CSV文件,我们可以使用StringBuilder类来生成文件内容:
StringBuilder sb = new StringBuilder();
// 添加标题
sb.AppendLine("Name,Age,Gender");
// 添加数据
foreach (Person person in persons)
{
sb.AppendFormat("{0},{1},{2}", person.Name, person.Age, person.Gender);
sb.AppendLine();
}
// 将文件内容写入磁盘
File.WriteAllText(@"D:\persons.csv", sb.ToString());
我们首先创建一个StringBuilder对象sb,然后添加CSV文件的标题。然后,我们将Person列表中的每个记录迭代,将每个记录的属性添加到字符串生成器中。最后,我们将字符串生成器的内容写入名为persons.csv的文件中。
在C#中,将对象列表转换为CSV格式的文件非常简单。我们可以使用StringBuilder类来生成文件内容,并使用File类将文件写入磁盘。我们还可以添加标题以提高数据可读性。