コード例 #1
0
 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}");
         }
     }
 }
コード例 #2
0
        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);
            }
        }
コード例 #3
0
        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}");
            }
        }