manipulacao de String
Gente, to precisando de um help urgente mesmo.
Fiz uma aplicacao cliente/servidor, mas o programa cliente fico com 5M, por causa do BDE, ai resolve fazer um banco de dados no cliente, usando um txt. Mas to me batendo pra destribui ele. Assim preciso que cada valor entre <> seja jogado em uma variavel do tipo String. Eis um exemplo:
<Henry><Curitiba><221075981><Programador>
Preciso de uma rotina que fique assim:
Nome: Henry
Cidade: Curitiba
ICQ: 221075981
Profissao: Programador.
Desde ja agradeco, um abraco, Henry.
Fiz uma aplicacao cliente/servidor, mas o programa cliente fico com 5M, por causa do BDE, ai resolve fazer um banco de dados no cliente, usando um txt. Mas to me batendo pra destribui ele. Assim preciso que cada valor entre <> seja jogado em uma variavel do tipo String. Eis um exemplo:
<Henry><Curitiba><221075981><Programador>
Preciso de uma rotina que fique assim:
Nome: Henry
Cidade: Curitiba
ICQ: 221075981
Profissao: Programador.
Desde ja agradeco, um abraco, Henry.
Henry
Curtidas 0
Respostas
Beppe
14/01/2004
procedure ParseTags(const Data: String; const Fields: array of String; Lines: TStrings); var Stream: TStream; I: Integer; begin Stream := TStringStream.Create(Data); try with TParser.Create(Stream) do try for I := Low(Fields) to High(Fields) do begin if Token = ´<´ then begin if NextToken = toEof then Exit; Lines.Add(Format(´¬s: ¬s´, [Fields[I], TokenString])); if NextToken <> ´>´ then Exit; if NextToken = toEof then Exit; end; end; finally Free; end; finally Stream.Free; end; end; procedure TForm1.Button1Click(Sender: TObject); begin ParseTags(Edit1.Text, [´Nome´, ´Cidade´, ´ICQ´, ´Profissão´], Memo1.Lines); end;
O TParser é meio podrão, mas fez direitinho.
GOSTEI 0
Henry
14/01/2004
Miguinho Bipi, pode explica o codigo pra mim???
E me diz uma coisa, ele funciona pra quantos campos eu quise?
E me diz uma coisa, ele funciona pra quantos campos eu quise?
GOSTEI 0
Beppe
14/01/2004
Pode ter quantos campos quiser, que são passados como argumento no open array Fields.
Ex: Desde que haja um campo idade na string a ser analizada, você pode acrescentar ´Idade´ naquele array.
PS: amanhã posso te explicar melhor, falow. :)
Ex: Desde que haja um campo idade na string a ser analizada, você pode acrescentar ´Idade´ naquele array.
PS: amanhã posso te explicar melhor, falow. :)
GOSTEI 0
Otto
14/01/2004
Aqui em casa funcionou blz.... gostei do exemplo e ja guardei aqui em casa. :wink:
GOSTEI 0
Beppe
14/01/2004
Aqui em casa funcionou blz.... gostei do exemplo e ja guardei aqui em casa. :wink:
Vai me pagar pelos direitos?
PS: Tô brincando :twisted: , mas vai me pagar? :)
GOSTEI 0