deletar registro em um array
bom dia galera.. estou com a seguinte dúvida..
Type
TAgenda = record
strnomecompleto: string[30];
strendereco: string[30];
strbairro: string[15];
strcidade: string[15];
strestado: string[2];
strfoneresidencial,strfonecomercial,strcelular:string[15];
chrstatus: char;
end;
var
FAgenda: textfile;
DadosAgenda:array[1..5] of TAgenda;
a dúvida é que por exemplo eu preencho um registro que seria do dadosagenda[1] depois outro que seria dadosagenda[2] e assim por diante.. somente no final ou seja qdo fecho a aplicação eu gravo esse array num arquivo .txt..
eu queria saber se tem como eu deletar este arquivo do array.. uma coisa tipo
delete(dadosagenda[1]);// isso sei que não funciona, mas serve para ilustrar a explicação..
obrigado
Eric
Type
TAgenda = record
strnomecompleto: string[30];
strendereco: string[30];
strbairro: string[15];
strcidade: string[15];
strestado: string[2];
strfoneresidencial,strfonecomercial,strcelular:string[15];
chrstatus: char;
end;
var
FAgenda: textfile;
DadosAgenda:array[1..5] of TAgenda;
a dúvida é que por exemplo eu preencho um registro que seria do dadosagenda[1] depois outro que seria dadosagenda[2] e assim por diante.. somente no final ou seja qdo fecho a aplicação eu gravo esse array num arquivo .txt..
eu queria saber se tem como eu deletar este arquivo do array.. uma coisa tipo
delete(dadosagenda[1]);// isso sei que não funciona, mas serve para ilustrar a explicação..
obrigado
Eric
Eric.miranda
Curtidas 0
Respostas
Marcelo Saviski
26/06/2003
Serve isso?
vetor[num] := nil;
vetor[num] := nil;
GOSTEI 0
Cabelo
26/06/2003
tem sim, como vc utiliza campos string neste vetor, vc só precisa atribuir ´´ para o campo que vc quer
exemplo :
DadosAgenda[1].strnomecompleto := ´´;
e assim por diante, depois vc deve trocar os dados dos próximos regitros para este indice, liberando assim a última posição do vetor
Espero ter te ajudado
Sem mais
Cabelo
exemplo :
DadosAgenda[1].strnomecompleto := ´´;
e assim por diante, depois vc deve trocar os dados dos próximos regitros para este indice, liberando assim a última posição do vetor
Espero ter te ajudado
Sem mais
Cabelo
GOSTEI 0
Eric.miranda
26/06/2003
mas como vou indexar novamente os outros registros??
GOSTEI 0
Cabelo
26/06/2003
faça da seguinte maneira,
DadosAgenda[1].strnomecompleto := DadosAgenda[2].strnomecompleto
DadosAgenda[2].strnomecompleto := ´´;
Até o fim
Para te facilitar utilize um for até o fim do vetor
for v_i := [indice do vetor] to length(DadosAgenda) - 1 do
begin
DadosAgenda[v_i].strnomecompleto := ´´;
DadosAgenda[v_i].strnomecompleto := DadosAgenda[v_i + 1].strnomecompleto;
end;
DadosAgenda[1].strnomecompleto := DadosAgenda[2].strnomecompleto
DadosAgenda[2].strnomecompleto := ´´;
Até o fim
Para te facilitar utilize um for até o fim do vetor
for v_i := [indice do vetor] to length(DadosAgenda) - 1 do
begin
DadosAgenda[v_i].strnomecompleto := ´´;
DadosAgenda[v_i].strnomecompleto := DadosAgenda[v_i + 1].strnomecompleto;
end;
GOSTEI 0