goruks 0 Denunciar post Postado Abril 2, 2009 Olá, tenho um programa em delphi que le um arquivo txt e gera sql para inserir em um banco, porem estou com um problema tem alguns locais com aspas simples e duplas gostaria de saber como removelas eu ja testei replace mas nao deu certo: quando leio a linha da este erro: List index out of bounds (10) ja testei vFinal := ReplaceStr(vFinal,'"',''); vFinal := StringReplace(vFinal,'''','', []); no caso da aspas simples vai mais uma pasta simples antes dela para ele ler a aspa como string e nao como inicio de uma string para variavel correto? Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Abril 3, 2009 Tente esta função: function ReplaceStr(sOldString, sNewString, sTexto : String) : String; begin while pos(sOldString,Trim(sTexto)) > 0 do begin sTexto := Copy(Trim(sTexto),1,Pos(sOldString,Trim(sTexto)) - 1) + sNewString + Copy(Trim(sTexto),Pos(sOldString,Trim(sTexto)) + 1,Length(Trim(sTexto))); end; Result := sTexto; end; Nesta forma: vFinal := ReplaceStr('"','',vFinal); []'s Compartilhar este post Link para o post Compartilhar em outros sites
Raficcha 1 Denunciar post Postado Abril 3, 2009 Assim: a função function RemoveChar(STR: string;CHR: char): string; var cont : integer; begin Result := ''; for cont := 1 to Length(STR) do begin if (STR[cont] <> CHR) then Result := Result + STR[cont]; end; end; ================ você usa ela pra remover os chars assim as aspinhas simples(') (essas aqui você passa o codigo dela); minhastring = RemoveChar(minhastring, #39); //39 é o codigo das " ' " as aspinhas normais ('"') pode ser com o codigo tambeim (procura na tabela ASCII os codigos) ou pelo char msm minhastring = RemoveChar(minhastring, '"'); espero ter ajudado.. qualquer coisa me passa um email que eu t mando uns exemplos (só o codigo fonte): tonello.rafinha@gmail.com Compartilhar este post Link para o post Compartilhar em outros sites