C#将对象列表写入文件(最简单的方法)

时间:2018-06-06 06:28:30

标签: c# list file file-writing

我有一类付款:

class Payments
{
    public string id;    //it must be string because of a method
    public string name;
    public int payment;
}

以及对象列表:

private List<Payments> database = new List<Payments>();

问题是: 如何以最简单的方式将其写入文件(位于解决方案的文件夹中)?它不应该是最有效的。

2 个答案:

答案 0 :(得分:0)

您可以使用Newtonsoft json轻松地将此对象列表序列化为json并将其写入文件,

using (StreamWriter file = File.CreateText(@"f:\payments.json"))
{
        JsonSerializer serializer = new JsonSerializer();
        serializer.Serialize(file, database);
}

答案 1 :(得分:-1)

使用daily_sales_id - product_uid - sale_date - amount 属性标记您的类,并在序列化程序类中使用泛型构建。 你可以像这样使用它

[Serializable]

其中public static void Serialize<T>(T objectToSerialize, string path) where T : class { XmlSerializer serializer = new XmlSerializer(typeof(T)); using (var writer = new StreamWriter(path)) { serializer.Serialize(writer, objectToSerialize); } } 是您的T班级,Payments是您的目的地路径。 在这种方法中,您将序列化为xml结构,您可以通过使用其他序列化程序类轻松地将其交换为二进制结构。只要序列化只有公共属性,您就需要使用具有公共path访问者的公共属性替换您的公共字段。