TStringList

Delphi

18/04/2007

problema:
tenho uma tabela: [b:d74ef7671d]ENTRADA[/b:d74ef7671d]
e um arquivo text: [b:d74ef7671d]PROCESSADOS[/b:d74ef7671d]
preciso dar um loop na tabela e dentro do loop da tabela entrar em um loop no texto, entao verificar se o registro da tabela está no arquivo texto.
até ai beleza só que eu queria evitar de toda linha da tabela verificar todas as linhas to texto pq se uma linha do texo ja foi encontrada não preciso verificar ela novamente.

alguma coisa desse tipo:

while not Entrada.eof do
begin
   
  for i := 0 to PROCESSADOS.count - 1 do
  begin
    if Entrada.FieldValues[´Numero´] = MidStr(PROCESSADOS.strings[i], 1, 3) then
    begin
      // executo uma ação
      PROCESSADOS.delete(i);
      Break;
    end;

  end;
  ENTRADA.next;
end;


não fiz este condigo testando no Delphi pq onde estou estou sem Delphi, apenas dei um idéia do que preciso, só que acho q esse delete no StringList vai dar pau.

alguem teria uma ideia ?????


Fabiano Góes

Fabiano Góes

Curtidas 0

Respostas

Massuda

Massuda

18/04/2007

O que é o PROCESSADOS? Um TStringList? Se for, dá problema porque o Delete mexe também com o tamanho da lista. Funcionará se você percorrer a lista de trás para frente ou se você ao invés de deletar, ´marcar como deletado´, por exemplo, atribuindo ´´ (string vazia) ao item na lista (isso não muda o tamanho da lista).


GOSTEI 0
Fabiano Góes

Fabiano Góes

18/04/2007

massuda,
PROCESSADOS é um TStringList,

como atribuir uma string vazia ?

tipo: PROCESSADOS.strings[i] := ´´;

????


GOSTEI 0
Fabiano Góes

Fabiano Góes

18/04/2007

valeu massuda,
funcionou belezinha.

muito obrigado !!!!


GOSTEI 0
POSTAR