예제 #1
0
        public async Task ImportarCsvSeladora()
        {
            var info = new FileInfo(txtAbrirArquivo1.Text);

            IList <Selo> selosList;

            if (info.Extension.ToLower() == ".csv")
            {
                selosList = _leitorCSV.LerSelos(info.FullName);
            }
            else
            {
                string json = File.ReadAllText(info.FullName);
                selosList = _leitorJSON.LerSelos(json);
            }

            HashSet <Selo> selosHash = new HashSet <Selo>();

            foreach (var selo in selosList)
            {
                selosHash.Add(selo);
            }

            txtOutput.Text  = "";
            txtOutput.Text += $"Quantidade de selos no csv - {selosList.Count}" + Environment.NewLine;
            txtOutput.Text += $"Quantidade de selos no csv (sem duplicidades) - {selosHash.Count}" + Environment.NewLine;

            string jsonSelos = await _seloCtrl.BuscarJSONSelosNaApiSeladora(selosHash.ToList());

            File.WriteAllText($"{fbd_SaveFile.SelectedPath}\\selosApi.json", jsonSelos);
        }
        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);
        }