GARANTIR DESCONTO

Fórum Ajuda com Agenda Telefonica #357508

23/04/2008

0

Seguinte tenho um Txt com as seguinte informacoes

:Funcionarios:

Nome: Fulano
Telefone: 412535
Email: eu@globo.com

:Tesouraria:
Nome: Fulano 2
Telefone: 4241252
email: hua@globo.com

alguem sabe alguma de forma de fazer com que quando eu abrir esse txt, ele identificar o :Funcionarios: e enviar o Campo Nome: para o Edit1, Telefone pro Edit 2.... e qndo identificar Tesouraria enviar o Nome pro Edit 5 e o Telefone pro Edit6 ! alguem sabe alguma coisa ? ja procurei string replace e nao consigui fazer funcionar :) vlw


Bertu

Bertu

Responder

Posts

23/04/2008

Facc

Seguinte tenho um Txt com as seguinte informacoes :Funcionarios: Nome: Fulano Telefone: 412535 Email: eu@globo.com :Tesouraria: Nome: Fulano 2 Telefone: 4241252 email: hua@globo.com alguem sabe alguma de forma de fazer com que quando eu abrir esse txt, ele identificar o :Funcionarios: e enviar o Campo Nome: para o Edit1, Telefone pro Edit 2.... e qndo identificar Tesouraria enviar o Nome pro Edit 5 e o Telefone pro Edit6 ! alguem sabe alguma coisa ? ja procurei string replace e nao consigui fazer funcionar :) vlw



Acredito que de para trabalhar igual INIFILES. Busque aki no forum


Responder

Gostei + 0

24/04/2008

Bertu

Nao da por 1 motivo... Inifiles ele busca no arquivo a string [NOME] , precisa ter o [ ] ! e minha agenda ja ta toda inserida no txt eh mto grande, nao vale apena editar o arquivo! =/


Responder

Gostei + 0

24/04/2008

Bertu

alguem tem alguma ideia ? Massuda ?


Responder

Gostei + 0

24/04/2008

Obrunno

Use a seguinte função:

function ObterTermo(APosicao: Integer; ASeparador,ALinha: String): String;
var
sAux: TStringList;
begin
Result:=´´;
sAux:=TStringList.Create;
sAux.Text:=StringReplace(ALinha,ASeparador,#1310,[rfReplaceAll, rfIgnoreCase]);
if APosicao <= sAux.Count then
Result:=sAux.Strings[APosicao-1];
sAux.Free;
end;

Utilização:
ObterTermo(2, ´:´, ´Nome: Cicraninho´); retornará ´Cicraninho´
ou Edit5.text := ObterTermo(2, ´:´, ´Nome: Cicraninho´);

Use dicas de arquivos de texto para abri-lo e varrer todas as linhas. Daí vc pode fazer uma filtragem:

if ObterTermo(1, ´:´, ´Nome: Cicraninho´) = ´Nome´ then
linha contem o nome...
if ObterTermo(1, ´:´, ´Nome: Cicraninho´) = ´Telefone´ then
linha contem o telefone...

e assim vai!!!


Responder

Gostei + 0

24/04/2008

Bertu

aee blzz... so q como ponho pra funciona num Memo, aqui da um erro :S


Responder

Gostei + 0

24/04/2008

Bertu

axo qn ao funcionou


Responder

Gostei + 0

24/04/2008

Martins

aee blzz... so q como ponho pra funciona num Memo, aqui da um erro :S


Qual o erro q dá?

Boa sorte!


Responder

Gostei + 0

24/04/2008

Bertu

Nao ta retornando o numero do telefone e nem o nome da pessoa! A ideia seria pegar o Nome: e aparti do : inserir em um Campo Edit! E a mesma coisa com telefone, so que nao ta retornando alguma ideia ?


Responder

Gostei + 0

25/04/2008

Obrunno

Como já falei antes...

Use a função ObterTermo que postei acima.

Edit5.text := ObterTermo(2, ´:´, ´Nome: Fulano´);
// A função vai mandar pro Edit5 o texto ´Fulano´;

Edit6.text := ObterTermo(2, ´:´, ´Telefone: 3424-3215´);
// A função vai mandar pro Edit6 o texto ´3424-3215´;

e assim por diante.


Responder

Gostei + 0

25/04/2008

Obrunno

Quanto ao erro no MEMO...

Tente fazer o teste para o edit como te mostrei.

Depois veja se está tendando adicionar no memo assim:
memo1.lines.add(ObterTermo(2, ´:´, ´Telefone: 3424-3215´));

Flw´s


Responder

Gostei + 0

25/04/2008

Bertu

simm vlw d+, mais o problema eh que eu coloco essa funcao do Edit5 no evento OnChange do Memo... dae nao retorna nada! em qual evento eu colocaria ?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar