public LotteryDatabase(string file) { _file = file; if (File.Exists(file)) { Winners = JsonConvert.DeserializeObject <Dictionary <string, List <string> > >( File.ReadAllText(file)); UpdateWinnedPersons(); } PersonJson = JsonConvert.DeserializeObject <PersonJson>( File.ReadAllText("./Resources/person.json")); foreach (var kv in PersonJson.Persons) { kv.Value.Name = kv.Key; } foreach (var name in PersonJson.Excluded ?? new HashSet <string>()) { if (!PersonJson.Persons.ContainsKey(name)) { MessageBox.Show($"名字不存在: {name}"); } } foreach (var name in PersonJson.ExcludedForBig ?? new HashSet <string>()) { if (!PersonJson.Persons.ContainsKey(name)) { MessageBox.Show($"名字不存在: {name}"); } } }
public void Serialize() { // объект для сериализации PersonJson person1 = new PersonJson("Tom", 295151); PersonJson person2 = new PersonJson("Bill", 25442235); PersonJson[] people = new PersonJson[] { person1, person2 }; DataContractJsonSerializer jsonFormatter = new DataContractJsonSerializer(typeof(PersonJson[])); using (FileStream fs = new FileStream("people.json", FileMode.OpenOrCreate)) { jsonFormatter.WriteObject(fs, people); } }
internal static void JSONSerializeAndDeserialize() { PersonJson p = new PersonJson { Id = 1, Name = "John Doe" }; using (MemoryStream stream = new MemoryStream()) { // Serialize. DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(PersonJson)); ser.WriteObject(stream, p); stream.Position = 0; StreamReader streamReader = new StreamReader(stream); Console.WriteLine(streamReader.ReadToEnd()); // Deserialize. stream.Position = 0; PersonJson result = (PersonJson)ser.ReadObject(stream); Console.WriteLine($" Id is {result.Id} and Naem is {result.Name}"); } }