ERRO ACENTUACAO - RAD STUDIO 10.2 E HTML

18/03/2022

0

estou gerando um codigo html com rad studio 10.2 porém sai um losango com uma interrogação no lugar do "Ç" e acentos.

HTML := TSTringList.Create;
HTML.Add('<html lang=pt-br>');

HTML.Add(' <head>');
HTML.Add(' <title>O.S.</title>');
HTML.Add(' <meta charset="UTF-8">');
HTML.Add(' <meta name="viewport" content="width=device-width, initial-scale=1.0">');
HTML.Add(' </head>');
HTML.Add(' <body bgcolor=#FFFFFF link=#000000 vlink=#000000 alink=#B5B5B5>');
...

como posso resolver isso?
Joao Silva

Joao Silva

Responder

Posts

22/03/2022

Raimundo Pereira

Fala João, tente assim.


  uses
  shellapi,

  var
  HTML: TStringList;
  Caminho: string;
  i: integer;
begin
  HTML := TStringList.Create;
  with HTML do
  begin
    try
      Caminho := GetEnvironmentVariable('TEMP') + '\\' + 'teste.html';

      Add('<html>');
      Add('<title>O.S.</title>');
      Add('<font size=4>Teste acentuação em HTML-Delphi XE7</font>');
      Add('<meta charset = "UTF-8">');
      Add(' <meta name="viewport" content="width=device-width, initial-scale=1.0">');
      Add('<BR><BR>');

      //Adiciona todo conteúdo do Memo no HTML
      for i := 0 to Memo_.Lines.Count - 1 do
      begin
        Add(UTF8Encode(Memo_.Lines[i])); //Permite acentuação
        Add('</br>');
      end;

      Add('<body bgcolor=#FFFFFF link=#000000 vlink=#000000 alink=#B5B5B5>');
      Add('</html>');

      SaveToFile(Caminho, Encoding.UTF8);
      ShellExecute(Handle, 'open', Pchar(Caminho), nil, nil, SW_SHOWMAXIMIZED);
    finally
      Free;
    end;
  end;


Resultado no link
https://uploaddeimagens.com.br/imagens/vnzXnXQ



Responder

12/06/2022

Joao Silva

Resolvido. Muito obrigado!!!
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