diff options
Diffstat (limited to 'MediaBrowser.Common/Json/JsonSerializer.cs')
| -rw-r--r-- | MediaBrowser.Common/Json/JsonSerializer.cs | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/MediaBrowser.Common/Json/JsonSerializer.cs b/MediaBrowser.Common/Json/JsonSerializer.cs new file mode 100644 index 000000000..c9b8d8e85 --- /dev/null +++ b/MediaBrowser.Common/Json/JsonSerializer.cs @@ -0,0 +1,55 @@ +using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.IO;
+
+namespace MediaBrowser.Common.Json
+{
+ public class JsonSerializer
+ {
+ public static void Serialize<T>(T o, Stream stream)
+ {
+ using (StreamWriter streamWriter = new StreamWriter(stream))
+ {
+ using (Newtonsoft.Json.JsonTextWriter writer = new Newtonsoft.Json.JsonTextWriter(streamWriter))
+ {
+ var settings = new Newtonsoft.Json.JsonSerializerSettings()
+ {
+ NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore
+ };
+
+ Newtonsoft.Json.JsonSerializer.Create(settings).Serialize(writer, o);
+ }
+ }
+ }
+
+ public static void Serialize<T>(T o, string file)
+ {
+ using (StreamWriter streamWriter = new StreamWriter(file))
+ {
+ using (Newtonsoft.Json.JsonTextWriter writer = new Newtonsoft.Json.JsonTextWriter(streamWriter))
+ {
+ var settings = new Newtonsoft.Json.JsonSerializerSettings()
+ {
+ NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore
+ };
+
+ Newtonsoft.Json.JsonSerializer.Create(settings).Serialize(writer, o);
+ }
+ }
+ }
+
+ public static T Deserialize<T>(string file)
+ {
+ using (StreamReader streamReader = new StreamReader(file))
+ {
+ using (Newtonsoft.Json.JsonTextReader reader = new Newtonsoft.Json.JsonTextReader(streamReader))
+ {
+ return Newtonsoft.Json.JsonSerializer.Create(new Newtonsoft.Json.JsonSerializerSettings() { }).Deserialize<T>(reader);
+ }
+ }
+ }
+ }
+}
|
