using System.Text; using SabreTools.Serialization.Interfaces; namespace SabreTools.Serialization.Files { /// /// Base class for other JSON serializers /// /// public partial class JsonFile : IFileSerializer { /// public T? Deserialize(string? path) => Deserialize(path, new UTF8Encoding(false)); /// /// Deserialize a file into /// /// Type of object to deserialize to /// Path to deserialize from /// Encoding to parse text as /// Filled object on success, null on error public T? Deserialize(string? path, Encoding encoding) { using (var data = PathProcessor.OpenStream(path)) { return new Streams.JsonFile().Deserialize(data, encoding); } } } }