Fórum Problemas com Memo x Acentos x TXT #533879

07/10/2015

0

Pessoal, estou tentando elaborar uma rotina para exportar uma ou mais tabelas do banco de dados para um arquivo TXT estilo CSV.

Já usei StringList, Memo e WriteLn mas nenhum salva o arquivo com a acentuação original.

Como teste, cheguei a visualizar o Memo na tela, onde aparece perfeitamente. Mas no método SaveToFile, ele perde toda a acentuação.

Exemplo:

Conteúdo no MEMO > "Acentuação"

Conteúdo salvo no arquivo TXT > "Acentuac,a~o"

Alguma dica?

Obrigado.
Sérgio Jr.

Sérgio Jr.

Responder

Posts

07/10/2015

Luiz Eduardo

Poderia postar parte do código usado do aqui? a parte que salva no .txt, assim analisamos melhor sua questão.
Responder

Gostei + 0

07/10/2015

Sérgio Jr.

// a variável to tipo AnsiString monta a linha a ser exportada
sLinhaTmp :=
IntToStr(vl_qA.FieldValues['pct_id']) + ';' +
IntToStr(vl_qA.FieldValues['fk_emp_id']) + ';' +
IntToStr(vl_qA.FieldValues['pct_conta']) + ';' +
IntToStr(vl_qA.FieldValues['pct_tipo']) + ';' +
(vl_qA.FieldValues['pct_classif']) + ';' +
(vl_qA.FieldValues['pct_nome']);

Writeln(aArq, sLinhaTmp); // Teste de salvamento em aquivo (mas com erro de acentuação)


mTexto1.Lines.Add(sLinhaTmp); // Armazena a linha no no MEMO (mas com erro de acentuação)


// Armazena a linha no no MEMO (mas SEM erros de acentuação)
mTexto2.Lines.Add(IntToStr(vl_qA.FieldValues['pct_id']) + ';' +
IntToStr(vl_qA.FieldValues['fk_emp_id']) + ';' +
IntToStr(vl_qA.FieldValues['pct_conta']) + ';' +
IntToStr(vl_qA.FieldValues['pct_tipo']) + ';' +
(vl_qA.FieldValues['pct_classif']) + ';' +
(vl_qA.FieldValues['pct_nome']));

mTexto1.Lines.SaveToFile(Caminho1.Text); // Armazena a linha no no MEMO (mas com erro de acentuação)

mTexto2.Lines.SaveToFile(Caminho2.Text); // Armazena a linha no no MEMO (mas TAMBÉM com erro de acentuação)
Responder

Gostei + 0

08/10/2015

Luiz Eduardo

Que tal essa variável sLinhaTemp sendo do tipo UTF8String?

Você também pode dar uma olhada nesses links

http://www.planetadelphi.com.br/dica/7068/grava-arquivo-formatado-utf-8-nota-paulista

http://www.activedelphi.com.br/forum/viewtopic.php?t=49803&sid=7a51dd42da74423512e04f466faf799e

Espero que seja útil.
Responder

Gostei + 0

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

Aceitar