예제 #1
0
        /// <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);
        }
예제 #2
0
        /// <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);
        }