Exemplo n.º 1
0
 private static void Ler_alunos_do_ano_anterior()
 {
     //prim_input = String.Empty;
     //while(!File.Exists(prim_input))
     //    prim_input = Aceitar_nome_do_ficheiro("Primeiro input: ");
     prim_input = "2019_2020.csv";
     lst_aaa    = Ler_ficheiro(prim_input);
     Console.WriteLine("Nº de alunos do ano anterior: " + lst_aaa.lista.Count.ToString());
 }
Exemplo n.º 2
0
        private static void Processar_CSV(HashSet <int> p_alunos, Lst_Alunos p_lista, string p_texto, string p_estado)
        {
            // declaração da lista de linhas para o CSV
            // declaração da linha para o CSV
            // para cada um no conjunto alunos_novos
            //  procurar na lista de alunos do ano
            //  se encontra
            //      criar linha com os dados
            //          primeiro nome
            //          apelido
            //          construir endereço de email
            //          atribuir senha
            //          atribuir unidade
            //          estado da conta
            //      juntar a linha à lista
            // gravar o CSV

            List <List <string> > lst_csv = new List <List <string> >();
            List <string>         lst_reg;

            foreach (int processo in p_alunos)
            {
                foreach (Aluno registo in p_lista.lista)
                {
                    if (processo == registo.processo)
                    {
                        lst_reg = new List <string>();
                        lst_reg.Add(registo.primeiro_nome);
                        lst_reg.Add(registo.apelido);
                        lst_reg.Add("a" + registo.processo.ToString() + "@alpoente.org");
                        lst_reg.Add(registo.senha);
                        lst_reg.Add(consts.UNIDADE_ORGANICA_ALUNOS);
                        lst_reg.Add(p_estado);
                        lst_reg.Add(registo.escola);
                        lst_reg.Add(registo.ano);
                        lst_reg.Add(registo.turma);
                        lst_csv.Add(lst_reg);
                    }
                }
            }
            Gravar_ficheiro(Aceitar_nome_do_ficheiro(p_texto), lst_csv, consts.PRIMEIRA_LINHA_CSV);
        }
Exemplo n.º 3
0
        private static Lst_Alunos Ler_ficheiro(string p_nome_do_csv)
        {
            /*
             * Utiliza um StreamReader
             * guardar o enconding do ficheiro aberto para a gravação
             * para cada registo do CSV
             *  se não é a linha de cabeçalhos
             *      preenche matriz de dados
             *      se não é cabeçalho
             *          processa novo aluno
             *              ano letivo
             *              nº de processo
             *              nome completo
             *              email
             *              senha
             *              unidade organica
             *              escola
             *              ano escolar
             *              turma
             *          adiciona à lista
             *      se a lista tem registos
             *          constroi conjunto
             *      senão
             *          avisa que está vazia
             * devolve a lista construída (vazia ou não)
             */

            Lst_Alunos lista = new Lst_Alunos();
            Int16      res   = 0;

            using (StreamReader parser = new StreamReader(p_nome_do_csv))
            {
                encoding_dos_fich_lidos = parser.CurrentEncoding;
                while (!parser.EndOfStream)
                {
                    string[] dados = parser.ReadLine().ToString().Split(';');
                    if (Int16.TryParse(dados[0], out res))
                    {
                        Aluno aluno = new Aluno(
                            res,                            // ano letivo
                            Int16.Parse(dados[1]),          // nº de processo
                            dados[2].ToString(),            // nome completo
                            String.Empty,                   // email
                            String.Empty,                   // senha
                            consts.UNIDADE_ORGANICA_ALUNOS, // unidade organica
                            dados[3].ToString(),            // escola
                            dados[4].ToString(),            // ano escolar
                            dados[5].ToString()             // turma
                            );

                        lista.lista.Add(aluno);
                    }
                }
                if (lista.lista != null)
                {
                    if (lista.lista.Count > 0)
                    {
                        lista.Constroi_conjunto();
                    }
                }
                else
                {
                    Console.WriteLine("Não li nada");
                }
            }
            return(lista);
        }