好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#实现导出List数据到xml文件的方法【附demo源码下载】

本文实例讲述了C#实现导出List数据到xml文件的方法。分享给大家供大家参考,具体如下:

C#导出List数据到xml文件,这里主要用到的是:

XmlSerializer 类 (System.Xml.Serialization)

将对象序列化到 XML 文档中和从 XML 文档中反序列化对象。XmlSerializer 使您得以控制如何将对象编码到 XML 中。

实体类代码:

?

/// <summary>

/// 用户实体类

///

/// 注意:类的访问修饰符必须是:public,否则会出现错误:

/// 因其保护级别而不可访问。只能处理公共类型。

/// </summary>

[Serializable]

public class UserModel

{

     private long id = 1;

     private string name = "name" ;

     private int gender = 0;

     private int age = 20;

     private string userName = "userName" ;

     private string password = "password" ;

     public long Id

     {

       get { return id; }

       set { id = value; }

     }

     public string Name

     {

       get { return name; }

       set { name = value; }

     }

     public int Gender

     {

       get { return gender; }

       set { gender = value; }

     }

     public int Age

     {

       get { return age; }

       set { age = value; }

     }

     public string UserName

     {

       get { return userName; }

       set { userName = value; }

     }

     public string Password

     {

       get { return password; }

       set { password = value; }

     }

}

导出代码:

?

private void button1_Click( object sender, EventArgs e)

{

   try

   {

     List<UserModel> list = new List<UserModel>();

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     list.Add( new UserModel());

     using (System.IO.StringWriter stringWriter = new StringWriter( new StringBuilder()))

     {

       XmlSerializer xmlSerializer = new XmlSerializer( typeof (List<UserModel>));

       xmlSerializer.Serialize(stringWriter, list);

       FileStream fs = new FileStream( "list_userModel.xml" , FileMode.OpenOrCreate);

       StreamWriter sw = new StreamWriter(fs);

       sw.Write(stringWriter.ToString());

       sw.Close();

       fs.Close();

       MessageBox.Show( "写入文件成功!" );

     }

   }

   catch (System.Exception ex)

   {

     System.Console.WriteLine( "====================================" );

     System.Console.WriteLine(ex.Message);

     System.Console.WriteLine(ex.StackTrace);

   }

}

生成的XML文件内容:

?

<? xml version = "1.0" encoding = "utf-16" ?>

< ArrayOfUserModel xmlns:xsi = "http://HdhCmsTestw3.org/2001/XMLSchema-instance" xmlns:xsd = "http://HdhCmsTestw3.org/2001/XMLSchema" >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

  < UserModel >

   < Id >1</ Id >

   < Name >name</ Name >

   < Gender >0</ Gender >

   < Age >20</ Age >

   < UserName >userName</ UserName >

   < Password >password</ Password >

  </ UserModel >

</ ArrayOfUserModel >

完整实例代码点击此处 本站下载 。

希望本文所述对大家C#程序设计有所帮助。

dy("nrwz");

查看更多关于C#实现导出List数据到xml文件的方法【附demo源码下载】的详细内容...

  阅读:47次