1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| static void Main(string[] args)
{
Console.WriteLine("Démarrage...");
try
{
var fileNames = new[] { "messages1.xml", "messages2.xml" };
var allMsg = new MessageList { Messages = new List<Message>() };
var ser = new XmlSerializer(typeof(MessageList));
ser.UnknownAttribute += (s, e) => { Console.WriteLine("Attribut inconnu [{0}]", e.Attr.Name); };
ser.UnknownElement += (s, e) => { Console.WriteLine("Element inconnu [{0}]", e.Element.Name); };
foreach (var file in fileNames)
{
Console.WriteLine("Lecture du fichier {0}", file);
using (var reader = new FileStream(file, FileMode.Open))
{
var list = (MessageList)ser.Deserialize(reader);
allMsg.Messages.AddRange(list.Messages);
}
}
var fileName = "allMessages.xml";
using (var writer = new StreamWriter(fileName))
{
ser.Serialize(writer, allMsg);
}
using (var reader = new StreamReader(fileName))
{
var xml = reader.ReadToEnd();
Console.WriteLine(xml);
}
}
catch (Exception e)
{
Console.WriteLine("Une erreur s'est produite : " + e.Message);
}
Console.WriteLine("Appuyez sur une touche pour continuer...");
Console.ReadKey();
} |
Partager