浏览代码

Tweaked json and jsv serializers

LukePulverenti Luke Pulverenti luke pulverenti 13 年之前
父节点
当前提交
a2f120b76b

+ 2 - 9
MediaBrowser.Common/Serialization/JsonSerializer.cs

@@ -19,9 +19,9 @@ namespace MediaBrowser.Common.Serialization
         {
         {
             Configure();
             Configure();
 
 
-            using (StreamWriter streamWriter = new StreamWriter(file))
+            using (Stream stream = File.Open(file, FileMode.Create))
             {
             {
-                ServiceStack.Text.JsonSerializer.SerializeToWriter<T>(obj, streamWriter);
+                ServiceStack.Text.JsonSerializer.SerializeToStream<T>(obj, stream);
             }
             }
         }
         }
 
 
@@ -52,13 +52,6 @@ namespace MediaBrowser.Common.Serialization
             return ServiceStack.Text.JsonSerializer.DeserializeFromStream<T>(stream);
             return ServiceStack.Text.JsonSerializer.DeserializeFromStream<T>(stream);
         }
         }
 
 
-        public static T DeserializeFromString<T>(string data)
-        {
-            Configure();
-
-            return ServiceStack.Text.JsonSerializer.DeserializeFromString<T>(data);
-        }
-
         private static bool IsConfigured = false;
         private static bool IsConfigured = false;
         private static void Configure()
         private static void Configure()
         {
         {

+ 16 - 0
MediaBrowser.Common/Serialization/JsvSerializer.cs

@@ -18,5 +18,21 @@ namespace MediaBrowser.Common.Serialization
         {
         {
             return ServiceStack.Text.TypeSerializer.DeserializeFromStream<T>(stream);
             return ServiceStack.Text.TypeSerializer.DeserializeFromStream<T>(stream);
         }
         }
+
+        public static void SerializeToFile<T>(T obj, string file)
+        {
+            using (Stream stream = File.Open(file, FileMode.Create))
+            {
+                ServiceStack.Text.TypeSerializer.SerializeToStream<T>(obj, stream);
+            }
+        }
+
+        public static T DeserializeFromFile<T>(string file)
+        {
+            using (Stream stream = File.OpenRead(file))
+            {
+                return ServiceStack.Text.TypeSerializer.DeserializeFromStream<T>(stream);
+            }
+        }
     }
     }
 }
 }