/// <summary> /// Ler um arquivo e retornar uma lista com os selos identificados /// </summary> /// <param name="msg">Caminho do arquivo de selos</param> /// <returns></returns> public IList <Selo> LerArquivoSelo(string caminho) { FileInfo info = new FileInfo(caminho); if (info.Extension.ToLower() == ".csv") { return(_leitorCSV.LerSelos(caminho)); } else if (info.Extension.ToLower() == ".json") { return(_leitorJSON.LerSelos(File.ReadAllText(caminho))); } return(null); }
/// <summary> /// Ler um arquivo e retornar uma lista com os selos identificados /// </summary> /// <param name="msg">Mensagem a ser apresentada</param> /// <returns></returns> public static IList <Selo> LerArquivoSelo(string msg) { Console.Clear(); string caminho; do { Console.WriteLine(msg); caminho = Console.ReadLine(); } while (!File.Exists(caminho)); FileInfo info = new FileInfo(caminho); if (info.Extension.ToLower() == ".csv") { return(leitorCSV.LerSelos(caminho)); } else if (info.Extension.ToLower() == ".json") { return(leitorJSON.LerSelos(File.ReadAllText(caminho))); } return(null); }
private async void btnImportarCsvSeladora_Click(object sender, RoutedEventArgs e) { Console.Clear(); string caminho; do { Console.WriteLine("Informe o caminho do arquivo (JSON/CSV): "); caminho = Console.ReadLine(); } while (!File.Exists(caminho)); var info = new FileInfo(caminho); IList <Selo> selosList; if (info.Extension.ToLower() == ".csv") { selosList = _leitorCSV.LerSelos(caminho); } else { string json = File.ReadAllText(caminho); selosList = _leitorJSON.LerSelos(json); } HashSet <Selo> selosHash = new HashSet <Selo>(); foreach (var selo in selosList) { selosHash.Add(selo); } Console.WriteLine($"Quantidade de selos no csv - {selosList.Count}"); Console.WriteLine($"Quantidade de selos no csv (sem duplicidades) - {selosHash.Count}"); Console.WriteLine("\n\nImportando selos, aguarde ...\n\n"); string jsonSelos = await _seloCtrl.BuscarJSONSelosNaApiSeladora(selosHash.ToList()); File.WriteAllText("selosApi.json", jsonSelos); }