Ejemplo n.º 1
0
//Cadastro de Aluno
Cadastrar::Cadastrar (const string nome, const string matricula, const string senha, const char turma)
{
    bool existe;
    int tam_registro = 44; //Tamanho de um registro
    Registro registro (3);

    int sucesso = registro.incluir_registro ();

    ArquivoExiste arq ("dados/Aluno.txt");

    existe = arq.getExistencia ();

    //O arquivo jah existe e o registro sera inserido no meio do arquivo
    if (existe && sucesso >= 0)
    {
        ofstream arquivo ("dados/Aluno.txt", ios_base::in);

        arquivo.seekp (tam_registro*registro.getPos (), ios_base::beg);

        arquivo << nome << "|" << matricula << "|" << senha << "|" << turma;

        arquivo.close ();
    }
    //O arquivo jah existe e o registro sera inserido no final do arquivo
    else if (existe)
    {
        ofstream arquivo ("dados/Aluno.txt", ios_base::app);

        arquivo << "+" << nome << "|" << matricula << "|" << senha << "|" << turma;

        arquivo.close ();
    }
    //O arquivo ainda não existe
    else
    {
        ofstream arquivo ("dados/Aluno.txt");

        arquivo << nome << "|" << matricula << "|" << senha << "|" << turma;

        arquivo.close ();
    }
}
Ejemplo n.º 2
0
//Cadastra um usuário Master no sistema
InicializarSistema::InicializarSistema ()
{
    ofstream arquivo ("dados/Master.txt");

    //Não há espaço em disco
    if ( arquivo.fail () )
    {
        cout << "Nao ha espaco suficiente em disco!\n\n";
        abort ();
    }
    //Cadastrando um usuário Master inicial
    else
    {
        arquivo <<  "              m_user|123456789|     12345";

        arquivo.close ();

        Registro registro (1);

        registro.incluir_registro ();

    }
}
Ejemplo n.º 3
0
//Cadastro de usuário Master
Cadastrar::Cadastrar (const string nome, const string matricula, const string senha)
{
    //Aqui, nao ha verificacao da existencia do arquivo de usuarios Master, pois,
    //para que este codigo seja alcancado, eh necessario que a criacao deste
    //arquivo jah tenha sido feita na primeira execucao do sistema.
    int tam_registro = 42; //Tamanho de um registro
    Registro registro (1);

    int sucesso = registro.incluir_registro ();

    //Inserir no final do arquivo
    if (sucesso == -1)
    {
        ofstream arquivo ("dados/Master.txt", ios_base::app);

        arquivo << "+" << nome << "|" << matricula << "|" << senha;

        arquivo.close ();
    }
    else if (sucesso == 0)
    {
        ofstream arquivo ("dados/Master.txt", ios_base::in);

        arquivo.seekp (tam_registro*registro.getPos (), ios_base::beg);

        arquivo << nome << "|" << matricula << "|" << senha;

        arquivo.close ();
    }
    /* Implementar um try-catch para lançar uma exceção aqui!!!!
    else //sucesso = -2
    {
        throw "deu pau aqui! valor inválido para o nível de usuário!
    }
    */
}