// Author: Gockner, Simon // Created: 2021-04-27 // Copyright(c) 2021 SimonG. All Rights Reserved. using System.IO; using System.Xml; using System.Xml.Serialization; using Lib.Xml.Interfaces; namespace Lib.Xml { public class XmlReader : IXmlReader where T : new() { public T Read(string filePath) { if (!File.Exists(filePath)) return new T(); FileStream file = File.OpenRead(filePath); XmlReader xmlReader = XmlReader.Create(file); XmlSerializer xmlSerializer = new(typeof(T)); return (T?) xmlSerializer.Deserialize(xmlReader) ?? new T(); } } }