2010-07-07 12 views

Odpowiedz

4

Jest to podstawowy poradnik na Microsoft's support pages a ich przykład kodu jest tylko kilka linii Long:

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(); 
    } 
} 

Zasadniczo nie musisz wykonywać żadnych innych funkcji niż wywoływać wbudowane funkcje, które wykonują dla Ciebie ciężką pracę.

1

Oto dobry początek microsoft

Zobacz również w XML Schema i automatyczne generowanie klas z xsd.exe im szybciej się do tego przyzwyczaisz, tym lepiej zaoszczędzisz sporo pracy z XML. patrząc również na generowanych C# plików daje pewne wskazówki na temat korzystania z atrybutów manipulować drogę zajęcia serilized przez XmlSerializer

6

Jej naprawdę bardzo proste, są tylko trzy główne etapy.

  1. Trzeba zaznaczyć swoje klasy z atrybutem [Serializable].
  2. wprowadź kod serializacji
  3. wprowadź kod Deserializacji

serializacji:

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

Deserializacji:

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

W przypadku serializacji XML atrybut [Serializable] nie jest konieczny.Do serializacji binarnej potrzebny jest atrybut [Serializable]. – Xenan

+0

@ Xenan +1 za wzmiankę o tym, że '[Serializable]' jest zbędne dla Serializacji XML –

1

Można łatwo znaleźć wiele tutoriali o serializacji danych z wykorzystaniem .NET na Sieć. Jednak przypomnę kilka punktów:

  1. Rodzaje serializacji:

    się. Serializacja XML: proszę spojrzeć na: http://www.switchonthecode.com/tutorials/csharp-tutorial-xml-serialization

    b. Serializacja binarna: Proszę zapoznać się z http://www.switchonthecode.com/tutorials/csharp-tutorial-serialize-objects-to-a-file

  2. Należy również pamiętać o aspektach bezpieczeństwa podczas pracy (odczytywania i zapisywania danych) z plikami. Jest dobry tutorial tutaj http://msdn.microsoft.com/en-us/library/system.security.permissions.fileiopermission.aspx

0

Używamy serializacji do zapisu danych w formacie binarnym iw formacie XML. w formacie binarnym używamy formatu BibnaryFormatSerialization, a do formatu XML używamy SoapFormatSerialization.