[英]How to Serialize Multiple Objects of the SAme Class into a single file and Deseialze into Those objects in c#
[英]C# - Serialize multiple objects of the same class
我正在使用一個小型實用程序來管理網絡上連接的幾台計算機。 該實用程序在UI上將具有一個“添加計算機”按鈕,該按鈕允許用戶配置新計算機。
我有一個叫做component的類:
public class component
{
public string name { get; set; }
public string ip { get; set; }
public string room { get; set; }
bla bla
}
請保持絕對不是專業人士,如果問題聽起來很愚蠢,請原諒我。
我遇到的第一個問題是:如何在運行時創建同一類的多個實例? 我發現是使用具有序列化和反序列化功能的深層克隆。 這是一個好方法嗎?
第二個問題。 假設在運行時我成功創建了克隆,並且網絡中的每台計算機都有一個對象。 如何創建包含所有這些對象的文件? 如何序列化它們?
我不是在尋找代碼,而是在尋找指向正確方向的人,因為我敢肯定我的方法並不是最好的。 歡迎所有建議。
非常感謝!
好的,如何創建我的課程的實例
var myInstance = new MyClass();
如何將MyClass實例序列化到文件
var instance= new MyClass(); // <- instance
using (var sw = new StreamWriter("Path_to_file"))
{
var ser = new XmlSerializer(typeof(MyClass));
ser.Serialize(sw, instance);
}
如何從文件讀取MyClass實例
using (var sr = new StreamReader("path_To_file"))
{
var ser = new XmlSerializer(typeof(MyClass));
var myInstance = ser.Deserialize(sr) as T; // <- instance
}
要在程序中存儲同一類的多個實例,您需要一個名為List的對象( 此處為MSDN參考, 此處為快速教程)。 要存儲列表,您有多種選擇:使用xml , json , protobuf協議等進行序列化和反序列化,這是您的選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.