2010-07-07 6 views

Répondre

4

Il y a un tutoriel de base sur Microsoft's support pages et leur exemple de code est seulement quelques lignes:

using System; 

public class clsPerson 
{ 
    public string FirstName; 
    public string MI; 
    public string LastName; 
} 

class class1 
{ 
    static void Main(string[] args) 
    { 
     clsPerson p=new clsPerson(); 
     p.FirstName = "Jeff"; 
     p.MI = "A"; 
     p.LastName = "Price"; 
     System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType()); 
     x.Serialize(Console.Out, p); 
     Console.WriteLine(); 
     Console.ReadLine(); 
    } 
} 

Fondamentalement, vous n'avez rien d'autre à faire que d'appeler les fonctions intégrées qui font tout le travail pour vous.

1

est ici un bon départ microsoft

Regardez aussi dans le schéma XML et générer automatiquement des classes avec xsd.exe Le plus tôt vous vous habituerez à cela, mieux cela peut vous faire économiser beaucoup d'efforts en travaillant avec XML. regarder également les fichiers C# générés vous donne quelques indices sur la façon d'utiliser des attributs pour manipuler la façon dont les classes sont serilized par le XmlSerializer

6

Il est vraiment assez simple, il n'y a que trois étapes principales.

  1. Vous devez marquer vos classes avec l'attribut [Serializable].
  2. Ecrire code sérialisation
  3. écrire du code désérialisation

sérialisation:

var x = new XmlSerializer(typeof(YourClass)); 
var fs = new FileStream(@"C:\YourFile.xml"), FileMode.OpenOrCreate); 
x.Serialize(fs, yourInstance); 
fs.Close(); 

Désérialisation:

var x = new XmlSerializer(typeof(YourClass)); 
var fs = new FileStream(@"C:\YourFile.xml"), FileMode.Open); 
var fromFile = x.Deserialize(fs) as YourClass; 
fs.Close(); 
+2

Pour la sérialisation XML, l'attribut [Serializable] n'est pas nécessaire.L'attribut [Serializable] est nécessaire pour la sérialisation binaire. – Xenan

+0

@Xenan +1 pour avoir mentionné que [Serializable] 'est superflue pour la sérialisation XML –

1

Vous pouvez facilement trouver de nombreux tutoriels sur les données de sérialisation en utilisant .Net sur la Web Cependant, permettez-moi de rappeler quelques points:

  1. Types de sérialisation:

    a. Sérialisation XML: Veuillez regarder http://www.switchonthecode.com/tutorials/csharp-tutorial-xml-serialization

    b. Sérialisation binaire: Veuillez vous référer à http://www.switchonthecode.com/tutorials/csharp-tutorial-serialize-objects-to-a-file

  2. Veuillez également prendre en compte les aspects de sécurité lorsque vous travaillez (lire et écrire des données) avec des fichiers. Il y a un bon tutoriel ici http://msdn.microsoft.com/en-us/library/system.security.permissions.fileiopermission.aspx

0

Nous utilisons sérialisation pour écrire les données en format binaire et en format XML. pour le format binaire, nous utilisons BibnaryFormatSerialization et pour le format XML, nous utilisons SoapFormatSerialization.