Mercurial > silverbladetech
comparison MetroWpf/MetroWpf.Framework/FileSerializer.cs @ 15:060f02cd4591
Initial commit, pre airport work
author | stevenh7776 stevenhollidge@hotmail.com |
---|---|
date | Mon, 12 Mar 2012 23:05:21 +0800 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
14:741981715d94 | 15:060f02cd4591 |
---|---|
1 using System; | |
2 using System.Collections.Generic; | |
3 using System.IO; | |
4 using System.Runtime.Serialization; | |
5 using System.Text; | |
6 //using Newtonsoft.Json; | |
7 | |
8 namespace MetroWpf.Framework | |
9 { | |
10 public class FileSerializer | |
11 { | |
12 //public void SerializeJson(string filename, object obj) | |
13 //{ | |
14 // string json = JsonConvert.SerializeObject(obj); | |
15 // Serialize(filename, json); | |
16 //} | |
17 | |
18 public void Serialize(string filename, string text) | |
19 { | |
20 using (StreamWriter writer = new StreamWriter(filename)) | |
21 { writer.Write(text); } | |
22 } | |
23 | |
24 public void Serialize(string filename, IFormatter formatter, object objectToSerialize) | |
25 { | |
26 using (Stream stream = File.Open(filename, FileMode.Create)) | |
27 formatter.Serialize(stream, objectToSerialize); | |
28 } | |
29 | |
30 public string Deserialize(string filename) | |
31 { | |
32 StringBuilder sb = new StringBuilder(); | |
33 using (StreamReader reader = new StreamReader(filename)) | |
34 if (reader != null) | |
35 sb.AppendLine(reader.ReadToEnd()); | |
36 | |
37 return sb.ToString(); | |
38 } | |
39 | |
40 //public List<T> DeserializeJson<T>(string filename) | |
41 //{ | |
42 // var json = Deserialize(filename); | |
43 // return JsonConvert.DeserializeObject<List<T>>(json); | |
44 //} | |
45 | |
46 public T[] Deserialize<T>(string filename, IFormatter formatter, Type type) | |
47 { | |
48 using (Stream stream = File.Open(filename, FileMode.Open)) | |
49 { | |
50 var items = (T[])formatter.Deserialize(stream); | |
51 return items; | |
52 } | |
53 } | |
54 } | |
55 } |