formatar string por ,

01/09/2004

0

gostaria de format uma string ex:

´03´,´007´,12345,´CASA´,...

criar tipo variasveis pra pegar os valores tipo ....
a := 03
b := 007
c := 12345
d := casa

os campos caracteres vem com ´ ´ e o inteiro sem ´´


Guibas

Guibas

Responder

Posts

01/09/2004

Okama

Você pode implementar com as funçõs Copy e Pos, mas pode ocorrer erro quando a string tiver ´,´ ou número decimal dentro dela como: ´01´, 1,25, ´Casa´, ´Cama, Mesa e Banho´

Se a intensão é ler de um arquivo texto use cada variável em uma linha e utilize ReadLn.


Responder

01/09/2004

Aroldo Zanela

Colega,

Leve em consideração o que o Okama mencionou. Fora isto, me parece apropriada o seguinte exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var LineData: String;
    FieldData: String;
    Lista: TStringList;
    nI, nZ, nP: SmallInt;
    a, b, c, d: String;
begin

  LineData  := ´"03","007",12345,"CASA"´;
  Lista     := TStringList.Create;
  Lista.Clear;

  nZ        := Length(LineData);

  For nI := 1 to nZ do
  begin
    nP        := Pos(´,´,LineData);
    FieldData := ´´;
    if nP>0 then
    begin
      FieldData := RetirarAspas(Copy(LineData,1,nP-1));
      LineData  := Copy(LineData,nP+1,Length(LineData)-nP);
      Lista.Add(FieldData);
    end else
    begin
      FieldData := RetirarAspas(Copy(LineData,nP+1,Length(LineData)));
      Lista.Add(FieldData);
      break;
    end;
  end;

  a := Lista.Strings[0];
  b := Lista.Strings[1];
  c := Lista.Strings[2];
  d := Lista.Strings[3];

  ShowMessage(a+10+b+10+c+10+d);

  Lista.Free;
end;
function RetirarAspas(Expressao: String): String;
var nI, nZ: SmallInt;
begin
  nZ      := Length(Expressao);
  Result  := ´´;
  for nI := 1 to nZ do
  begin
    if Expressao[nI]<>´"´ then
      Result := Result + Expressao[nI];
  end;
end;



Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar