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