Feedback

C# - Objekt serialisierung

Veröffentlicht von am 28.06.2010
(1 Bewertungen)
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

using System;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
  
public class XMLSerializationUtility
{
    public static T DeserializeObject<T>( Encoding encoding, string xml )
    {
        try
        {
            using (MemoryStream memoryStream = new MemoryStream( StringToByteArray( encoding, xml ) ) )
            {
                using ( XmlTextWriter xmlTextWriter = new XmlTextWriter( memoryStream, encoding ) )
                {
                    XmlSerializer xmlSerializer = new XmlSerializer( typeof( T ) );
 
                    return (T)xmlSerializer.Deserialize( memoryStream );
                }
            }
        }
        catch
        {
            return default( T );
        }
    }
 
    public static string SerializeObject<T>( Encoding encoding, T obj )
    {
        try
        {
            MemoryStream memoryStream = new MemoryStream();
 
            using ( XmlTextWriter xmlTextWriter = new XmlTextWriter( memoryStream, encoding ) )
            {
                XmlSerializer xmlSerializer = new XmlSerializer( typeof( T ) );
                xmlSerializer.Serialize( xmlTextWriter, obj );
 
                memoryStream = (MemoryStream)xmlTextWriter.BaseStream;
            }
 
            return ByteArrayToString( encoding, memoryStream.ToArray() );
        }
        catch
        {
            return string.Empty;
        }
    }
 
    private static Byte[] StringToByteArray( Encoding encoding, string xml )
    {
        return encoding.GetBytes( xml );
    }
 
    private static string ByteArrayToString( Encoding encoding, byte[] byteArray )
    {
        return encoding.GetString( byteArray );
    }
}
Abgelegt unter Objekt serialisierung.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!