ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Lendo e identificando números pelo TStringList

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
NoobDoDelphi
Novato
Novato


Registrado: Segunda-Feira, 29 de Abril de 2019
Mensagens: 19

MensagemEnviada: Seg Mai 06, 2019 10:14 am    Assunto: Lendo e identificando números pelo TStringList Responder com Citação

Bom dia galera, fiz um post esses dias tentando fazer a leitura e quebra de linhas com o stringlist em um arquivo txt que eu tenho aqui, porém pensando melhor sobre, achei melhor que fosse feito de outro jeito, gostaria de pedir ajuda de vocês hoje novamente na seguinte questão.
Tenho 1 arquivo de texto cheio de números da seguinte forma
0020110623101639000002 e várias linhas com números assim.
Os dois primeiros números me permitem identificar quais os tipos de informação que o resto dos números representam.
De que forma eu poderia fazer talvez um if para ler os dois primeiros números e depois identificar o restante da informação?, lembrando que eu tenho um manual que diz quantos caracteres tem cada informação e qual tipo de informação é essa , espero que possam me ajudar.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
anderbelluno
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Novembro de 2011
Mensagens: 1030
Localização: Cianorte-PR

MensagemEnviada: Seg Mai 06, 2019 1:18 pm    Assunto: Responder com Citação

Sempre usando o Copy meu jovem.
Faz umas constantes com o referimento de como deve dividir.
Depois pra ficar bunitim pode fazer um case nessas constantes.
E aí é só copiar como quiser.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
NoobDoDelphi
Novato
Novato


Registrado: Segunda-Feira, 29 de Abril de 2019
Mensagens: 19

MensagemEnviada: Seg Mai 06, 2019 3:35 pm    Assunto: Responder com Citação

O copy eu até sei, oque eu não sei como fazer é verificar os dois primeiros números de cada linha
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
JoaoSHi
Experiente
Experiente


Registrado: Segunda-Feira, 25 de Agosto de 2008
Mensagens: 483

MensagemEnviada: Seg Mai 06, 2019 6:11 pm    Assunto: Responder com Citação

Colega, vê se ajuda:

Código:
Procedure Button1Click(Sender: TObject);
var
  st : TStringList;
  i  : Integer;
begin
  st := TStringList.Create;
  Try
    for i := 0 to st.Count - 1 do
      begin
        if Copy(st[i],1,2) = '00' then
          begin
            ChamaRotina00();
          end;
        if Copy(st[i],1,3) = '001' then
          begin
            ChamaRotina001();
          end;
      end;
  Finally
    st.Free;
  end;
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
JoaoSHi
Experiente
Experiente


Registrado: Segunda-Feira, 25 de Agosto de 2008
Mensagens: 483

MensagemEnviada: Seg Mai 06, 2019 6:13 pm    Assunto: Responder com Citação

Opa

Tem um primeiro IF Copy parece que não ficou completo, mas acredito que dá pra entender pelo próximo.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
NoobDoDelphi
Novato
Novato


Registrado: Segunda-Feira, 29 de Abril de 2019
Mensagens: 19

MensagemEnviada: Seg Mai 06, 2019 6:46 pm    Assunto: Responder com Citação

Finalmente consegui galera, todos os codigos ajudaram muito, obrigado.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB