ERP e GO UP | Ferramentas Customizadas

10204 - Adicionar linhas utilizando a função Gravarnl

Problema: Descrição do Problema: É possível gravar um exemplo da Função Gravarnl?
Adicionando linhas no final do arquivo?

Rotina / Tela: Regras, Relatórios.Solução: Solução: Sim, é possível.
Segue dois exemplos abaixo:

@Exemplo 1@

definir numero vArq;
definir alfa vNomeArq;
definir numero vLeu;
Definir alfa vLinha;
definir lista vLinhas;
definir funcao AdicionaLinhaNaLista();

@ O objetivo dessa regra é abrir e ler o conteúdo de um arquivo existe, @
@ adicionando cada linha do arquivo em um registro na lista dinâmica. @
@ Após ler as linhas do arquivo, são adicionadas novas linha a lista. @
@ Após adicionar as linhas desejadas na lista, elas são gravadas no arquivo. @

vLinhas.DefinirCampos();
vLinhas.AdicionarCampo(Linha, Alfa);
vLinhas.EfetivarCampos();

vNomeArq = c://teste.txt;
vLinha = ;
@ Verifica se o arquivo já existe. @
se(ArqExiste(vNomeArq)){
@ Abre o arquivo para leitura. @
vArq = Abrir(vNomeArq, Lernl);  
vLeu = Lernl(vArq, vLinha);
enquanto(vLeu = 1){
  @ Adiciona as linhas lidas na lista dinâmica. @
  AdicionaLinhaNaLista();    
  @ Lê a próxima linha. @
  vLeu = Lernl(vArq, vLinha);  
}
@ Fecha o arquivo para liberá-lo. @
Fechar(vArq);
}

@ Abre o arquivo para escrita. @
vArq = Abrir(vNomeArq, Gravarnl);
vLeu = 0;
@ Adiciona uma linha separadora, apenas para ilustrar. @
vLinha = *****************************************;
AdicionaLinhaNaLista();

@ Adiciona algumas linhas extras na lista para ilustrar. @
enquanto(vLeu < 5){
vLeu++;
IntParaAlfa(vLeu, vLinha);
vLinha = Linha + vLinha;
AdicionaLinhaNaLista();    
}

@ Grava todas as linhas da lista no arquivo. @
vLinhas.Primeiro();
enquanto(vLinhas.FDA = 0){
vLinha = vLinhas.Linha;
Gravarnl(vArq, vLinha);
vLinhas.Proximo();  
}
Fechar(vArq);

Mensagem(Retorna, Arquivo salvo com sucesso.);

funcao AdicionaLinhaNaLista();{
vLinhas.Adicionar();
vLinhas.Linha = vLinha;
vLinhas.Gravar();
}

@Exemplo 2@
definir numero ArqEntrada;
definir numero ArqSaida;
definir alfa Dados;
Definir Alfa XLido;
Definir Alfa Enter;
Definir Alfa Linefeed;


QtdLido =0;
Linhas = 0;
CaracterParaAlfa(13, enter);
CaracterParaAlfa(10, LineFeed);

ArqSaida = Abrir(c://Arquivo2.txt, Gravarnl);
enquanto (QtdLido <=  10)
{    
QtdLido=QtdLido+1;
}


Linhas = QtdLido + 10;
enquanto (QtdLido <= Linhas)
{
IntparaAlfa( QtdLido, xlido);
Dados= Carla + Xlido @+ LineFeed +enter@;
Gravarnl(ArqSaida, Dados);
QtdLido=QtdLido+1;
}
Fechar(ArqSaida);

Esse artigo foi útil?

Usuários que acharam isso útil: 0 de 0

Tem mais dúvidas? Envie uma solicitação

Comentários

0 comentário

Artigo fechado para comentários.