// <summary> /// Para cada globalIdLocal do ArrayList diclocais vai ao respetivo ficheiro json com o objetivo desserializar para a classe PrevisaoIPMA /// </summary> static PrevisaoIPMA LerFicheiroPrevisao(int globalIdLocal) { String jsonString = null; using (StreamReader reader = new StreamReader(@"../../Previsões/" + globalIdLocal + ".json")) { jsonString = reader.ReadToEnd(); } PrevisaoIPMA obj = JsonSerializer.Deserialize <PrevisaoIPMA>(jsonString); return(obj); }
static void Main(string[] args) { ArrayList dicLocais = LerLocais(@"../../locais.csv"); for (int i = 0; i < dicLocais.Count; i++) { PrevisaoIPMA previsaoIPMA = LerFicheiroPrevisao(((Descriçao)dicLocais[i]).globalIdLocal); // Depois de dessarializar um ficheiro json encontrado, vai-se atribuir valores aos objetos da classe PrevisaoIPMA graças ao ArrayList diclocais previsaoIPMA.local = ((Descriçao)dicLocais[i]).Local; previsaoIPMA.idRegiao = ((Descriçao)dicLocais[i]).idRegiao; previsaoIPMA.idDistrito = ((Descriçao)dicLocais[i]).idDistrito; previsaoIPMA.idConcelho = ((Descriçao)dicLocais[i]).idConcelho; previsaoIPMA.idAreaAviso = ((Descriçao)dicLocais[i]).idAreaAviso; // Caso for encontrado o globalIdLocal, vai ser serializado pela classe PrevisaoIPMA para um ficheiro json if (previsaoIPMA.globalIdLocal.Equals(1110600)) { string aux = Newtonsoft.Json.JsonConvert.SerializeObject(previsaoIPMA, Newtonsoft.Json.Formatting.Indented); File.WriteAllText(@"../../1110600-detalhe.json", aux); } } }