jc199 0 Denunciar post Postado Novembro 12, 2014 Bom dia amigos Estou querendo gerar uma aplicação simples onde abro um arquivo txt com essa estrutura em abaixo de 10 numeros por linha, onde do lado apareça os numeros que faltaram de 01 a 25; exemplo arquivo txt 01 02 03 04 07 10 11 14 16 18 linha 01 01 03 06 09 10 13 14 16 19 22 01 02 03 04 07 08 09 13 17 18 02 04 07 09 10 11 13 14 16 17 03 07 08 09 10 13 15 16 17 22 01 04 06 10 11 15 17 18 19 22 02 03 04 07 09 11 15 16 17 19 06 07 08 10 11 13 14 18 19 22 01 03 04 08 09 14 15 17 18 22 02 04 06 07 08 10 14 15 17 19 Arquivo a ser gerado (resultado) 05 06 08 09 12 13 15 17 19 20 21 22 23 24 25 E assim sucessivamente com cada linha Agradeço a compreensão Pessoal sou iniciantes dos iniciantes. Abraço Compartilhar este post Link para o post Compartilhar em outros sites
LazaroBinda 3 Denunciar post Postado Novembro 13, 2014 Veja se te serve: function TForm1.ChecaArquivo(arq: string): TStrings; var s, s1: TStrings; i, j, k: Integer; r: string; begin s := TStringList.Create; s1 := TStringList.Create; Result := TStringList.Create; try try s.Delimiter := ' '; s.StrictDelimiter := True; s1.LoadFromFile(arq); for i := 0 to s1.Count - 1 do //Qtdade de Linhas begin s.DelimitedText := s1[i]; k := 0; r := ''; for j := 1 to 25 do begin if (StrToInt(s[s.Count -1]) < j) or (StrToInt(s[j - k - 1]) <> j) then begin r := r+ Format('%2.2d', [j])+' '; Inc(k); end; end; if r <> '' then Result.Add(Trim(r)); end; finally s1.Free; end; except Result.Free; end; end; Pra vc usar seria: procedure TForm1.Button1Click(Sender: TObject); var arqResult: TStrings; begin arqResult := ChecaArquivo('arquivo.txt'); try arqResult.SaveToFile('arquivo1.txt'); finally arqResult.Free; end; end; Veja que este método só te serve se os número gravados em seu arquivos forem sempre em ordem crescente... Compartilhar este post Link para o post Compartilhar em outros sites