نمایش نتایج 1 تا 7 از 7

نام تاپیک: ذخیره لیستی یک کلاس در فایل xml

  1. #1
    کاربر دائمی آواتار PetekDincos
    تاریخ عضویت
    آبان 1389
    محل زندگی
    توهم
    پست
    594

    ذخیره لیستی یک کلاس در فایل xml

    با سلام
    دوستان من می خوام لیستی از یه کلاس رو در یه فایل xml ذخیره کنم و بعد بخونم
    مثلا کلاس MyClass که به صورت زیر می باشد رو به صورت یه لیست ازش دارم و می خوام در فایل xml ذخیره کنم و از فایل xml همون لیست رو بتونم بازیابی کنم ممنون می شم راهنماییم کنید با تشکر

    public Class MyClass
    {
    public int ID{get;set;}
    public string Name{get;set}
    }

  2. #2

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    اول باید به کلاست قابلیت serialize رو اضافه کنی

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Xml.Serialization;

    namespace WindowsFormsApplication1
    {
    [XmlRootAttribute]
    class user
    {
    [XmlElementAttribute]
    public string UserName;
    [XmlElementAttribute]
    public string password;

    }
    }



    بعد دوتا دکمه بزار روی یک فرم و اینجوری کد بزن :


    private void SaveXmlButton_Click(object sender, EventArgs e)
    {
    user user1=new user();
    user1.UserName="Admin";
    user1.password="123";
    XmlSerializer sr = new XmlSerializer(typeof(user));
    TextWriter tr =new StreamWriter("d:\\user1.xml");
    sr.Serialize(tr,user1);
    tr.Close();



    }

    private void ReadXML_Click(object sender, EventArgs e)
    {
    user user2 = new user();
    XmlSerializer sr = new XmlSerializer(typeof(user));
    TextReader tr = new StreamReader("d:\\user1.xml");

    user2 = (user)sr.Deserialize(tr);

    MessageBox.Show(user2.UserName);

    }


    فقط یادت باشه که این رو به بالای فرم اضافه کنی :


    using System.Xml.Serialization;
    using System.IO;

  3. #3
    کاربر دائمی آواتار PetekDincos
    تاریخ عضویت
    آبان 1389
    محل زندگی
    توهم
    پست
    594

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    با سلام
    ممنون از لطف شما , اما این یه کلاس را ذخیره می کنه چطور می شه یه لیست از کلاس را ذخیره کرد با تشکر

  4. #4

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    برای اینکار از راحت ترین روش استفاده از ArrayList هست
    متغیرهایی که از نوع ArrayList تعریف شده باشند خود به خود Serialize هستند
    لیستی از شی مورد نظر بسازید و با همین روش آرایه رو ذخیره کنید

  5. #5
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    با سلام

    به جای استفاده از ArrayList از Generic استفاده بکنید ( دلیلش رو هم بارها گفته شده )

    به این شکل :

     private void Form1_Load(object sender, EventArgs e)
    {
    List<user> Users = new List<user>
    {
    new user{UserName="mmd2009",password="123"},
    new user{UserName="mmd2010",password="123"},
    new user{UserName="mmd2011",password="123"}
    };
    }
    [XmlRootAttribute]
    class user
    {
    [XmlElementAttribute]
    public string UserName;
    [XmlElementAttribute]
    public string password;

    }


    موفق باشید

  6. #6
    کاربر دائمی آواتار PetekDincos
    تاریخ عضویت
    آبان 1389
    محل زندگی
    توهم
    پست
    594

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    نقل قول نوشته شده توسط mmd2009 مشاهده تاپیک
    با سلام

    به جای استفاده از ArrayList از Generic استفاده بکنید ( دلیلش رو هم بارها گفته شده )

    به این شکل :

     private void Form1_Load(object sender, EventArgs e)
    {
    List<user> Users = new List<user>
    {
    new user{UserName="mmd2009",password="123"},
    new user{UserName="mmd2010",password="123"},
    new user{UserName="mmd2011",password="123"}
    };
    }
    [XmlRootAttribute]
    class user
    {
    [XmlElementAttribute]
    public string UserName;
    [XmlElementAttribute]
    public string password;

    }


    موفق باشید
    با سلام
    ممنون می شم یه مثال با استفاده از Generic برای Save,Load یک لیست کلاس بنویسید با تشکر

  7. #7
    کاربر دائمی آواتار Esmail Solhkhah
    تاریخ عضویت
    مهر 1385
    محل زندگی
    بورکینافاسو
    پست
    1,774

    نقل قول: ذخیره لیستی یک کلاس در فایل xml

    با سلام
    ممنون می شم یه مثال با استفاده از Generic برای Save,Load یک لیست کلاس بنویسید با تشکر
    با اجازه دوست عزیزم جناب دیناروند


    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Windows.Forms;
    using System.Xml.Serialization;

    namespace PetekDincos_serialize
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    public class MyClass
    {
    [XmlElement("ID")]
    public int ID
    {
    get;set;
    }

    [XmlElement("Name")]
    public string Name
    {
    get; set;
    }
    }

    [XmlRoot("MyClassList")]
    public class MyClassList
    {
    public MyClassList()
    {
    Items = new List<MyClass>();
    }

    [XmlElement("MyClass")]
    public List<MyClass> Items
    {
    get; set;
    }
    }

    private void btnSerialize_Click(object sender, EventArgs e)
    {
    XmlSerializer serializer = new XmlSerializer(typeof(MyClassList));
    MyClassList myClassList = new MyClassList();
    myClassList.Items.Add(new MyClass { ID = 1, Name = "Test" });
    myClassList.Items.Add(new MyClass { ID = 2, Name = "Test2" });
    using (FileStream fStream = new FileStream(Application.StartupPath + "\\MyList.xml", FileMode.Create))
    {
    serializer.Serialize(fStream, myClassList);
    }
    }


    private void btnDeSrialize_Click(object sender, EventArgs e)
    {
    using (FileStream fStream = new FileStream(Application.StartupPath + "\\MyList.xml", FileMode.Open))
    {
    XmlSerializer serializer = new XmlSerializer(typeof(MyClassList));
    MyClassList myClassList = (MyClassList)serializer.Deserialize(fStream);
    }
    }
    }
    }


    موفق باشید.

تاپیک های مشابه

  1. سوال: در خواست سورس ذخیره و ... اطلاعات (string) در فایل xml ??
    نوشته شده توسط tam2145 در بخش VB.NET
    پاسخ: 4
    آخرین پست: شنبه 27 اسفند 1390, 16:15 عصر
  2. ذخیره اطلاعات بانک اکسس در فایل xml
    نوشته شده توسط alicomputer در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 3
    آخرین پست: جمعه 02 بهمن 1388, 06:58 صبح
  3. سوال: ذخیره اطلاعات در یک فایل XML
    نوشته شده توسط مهدی رحیم زاده در بخش C#‎‎
    پاسخ: 2
    آخرین پست: یک شنبه 19 خرداد 1387, 18:57 عصر
  4. مشکل با ذخیره سازی فایل xml
    نوشته شده توسط Maryam_y_m در بخش VB.NET
    پاسخ: 1
    آخرین پست: چهارشنبه 16 اسفند 1385, 10:04 صبح
  5. مشکل در ذخیره اطلاعات در فایل Xml
    نوشته شده توسط saeid taheri در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: چهارشنبه 03 آبان 1385, 20:23 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •