Usuário com melhor resposta
No corpo do meu e-mail aonde tem os acentos esta aparecendo "?"

Pergunta
-
No corpo do meu e-mail aonde tem os acentos esta aparecendo "?"
Ja tentei colocar o mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
Porem apenas substituiu os simbolos estranhos pelo ponto de "?" interrogação.
Como eu resolvo isso ?
Segue meu codigo abaixo.
Fico no aguardo
Obrigado
protected void EnviarEmail(string assunto, string destinatario)
{
try
{
string strCaminhoArquivo = @"C:\temp\" + FileUpLoad1.FileName;
FileUpLoad1.SaveAs(strCaminhoArquivo);
StreamReader objStreamReader = new StreamReader(strCaminhoArquivo);
string strConteudoArquivoHtml = objStreamReader.ReadToEnd();
MailMessage mailMessage = new MailMessage();
mailMessage.Body = strConteudoArquivoHtml;
mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
//mailMessage.Body = "SEM O ARQUIVO HTML NO CORPO DO E-MAIL";
mailMessage.IsBodyHtml = true;
//Endereço que irá aparecer no e-mail do usuário
mailMessage.From = new MailAddress("assinaturas2@sgsim.com.br","ARTSIM TESTE TEXTO SEM SIMBOLOS");
//destinatarios do e-mail, para incluir mais de um basta separar por ponto e virgula///
mailMessage.To.Add(destinatario);
mailMessage.Bcc.Add("olitares@yahoo.com.br");
mailMessage.CC.Add("paulo@artsim.com.br");
mailMessage.Subject = assunto;
mailMessage.Priority = MailPriority.High;
// Anexa o arquivo do FileUpload ????
// Cria o anexo para o e-mail
MemoryStream MS = new MemoryStream(FileUpLoad1.FileBytes);
Attachment anexo = new Attachment(MS,FileUpLoad1.FileName);
mailMessage.Attachments.Add(anexo);
//smtp do e-mail que irá enviar
SmtpClient smtpClient = new SmtpClient("smtp.sgsim.com.br");
smtpClient.EnableSsl = false;
//credenciais da conta que utilizará para enviar o e-mail
smtpClient.Credentials = new NetworkCredential("assinaturas2@sgsim.com.br", "senha");
smtpClient.Port = 587;
smtpClient.Send(mailMessage);
//return true;
}
catch
{
//return false;
}
}
Respostas
-
Qual ferramenta voce esta usando para criar o arquivo HTML?
Eu fiz aqui um procedimento que deu certo:
1- Abra o arquivo HTML usando o Notepad++
2- No menu Encoding (eu tenho a versao em ingles nao sei como ficou a traduçao) use a opçao Convert to UTF-8
3- Salve o arquivo.
Agora uma pequena modificaçao no codigo:
StreamReader objStreamReader = new StreamReader(strCaminhoArquivo,true); string strConteudoArquivoHtml = objStreamReader.ReadToEnd();
o true no segundo parametro diz ao StreamReader identificar o encondig do arquivo.
Se o arquivo nao é modificado (original) o encondig é UTF-8, o que certamente é falso.
Usei outras ferramentas aqui e todas elas nao foram capazes de identificar qual é o encoding do arquivo, mas convertendo o arquivo em UTF-8 seu codigo passa a funcionar.
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Marcado como Resposta Marcos SJ quinta-feira, 13 de agosto de 2015 18:56
-
O problema nao esta na codificaçao do email enviado. Quando voce faz:
mailMessage.Body = strConteudoArquivoHtml;
a variavel strConteudoArquivoHtml ja esta corrompida e com os "?" no lugar dos acentos... tudo isso porque seu arquivo html esta em um formato nao reconhecido pelo C#.
Como eu disse, quando eu forcei que o arquivo HTML fosse do tipo UTF8, o seu codigo passou a funcionar.
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Editado William John Adam TrindadeModerator quinta-feira, 13 de agosto de 2015 19:57
- Marcado como Resposta ricardoti2012 quinta-feira, 13 de agosto de 2015 20:32
Todas as Respostas
-
No corpo do meu e-mail estou anexando um arquivo html
esta anexando e enviando. Porem quando eu envio o e-mail o corpo do e-mail os textos que tem acentos ficam com com simbolos
Como eu resolvo isso ?
Fico no aguardo
Obrigado
- Mesclado Marcos SJ quarta-feira, 12 de agosto de 2015 20:49 Thread duplicada
-
Você esta usando o que pra enviar?
Mas o problema é o encoding, abra o arquivo xml no visual studio e veja nas propriedades qual encode ele esta usando, utilize o mesmo encode no email e no meta do html.
vc deve ta cirando um arquivo com o padrão windows e enviando como utf ou ao contrário.
Desenvolvedor de sistemas VB6, ASP, ASP.NET, C#, VB.NET, SQL Server, Oracle e MySql.
-
coloca isto.
//codificação do assunto do email para que os caracteres acentuados serem reconhecidos. oEmail2.SubjectEncoding = Encoding.GetEncoding("ISO-8859-1"); //codificação do corpo do emailpara que os caracteres acentuados serem reconhecidos. oEmail2.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
- Marcado como Resposta ricardoti2012 segunda-feira, 10 de agosto de 2015 12:16
- Não Marcado como Resposta ricardoti2012 segunda-feira, 10 de agosto de 2015 12:42
- Sugerido como Resposta Bruno Destro segunda-feira, 10 de agosto de 2015 13:55
-
-
Desculpa Diogo
Colocando o código que você enviou não resolveu o problema.
mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
Agora em vez de símbolos no lugar dos acentos aparece o ponto de "?"
Será que tem que ser outro Encoding ?
Fico no aguardo
Obrigado.
-
-
-
Diogo
Eu acredito que devido ao seu conteúdo no html o seu codigo funcione. Porem no meu html ele esta aparecendo com
o ponto de "?" no lugar dos acentos.
Desculpa mas não entendi
Aonde eu coloco o charset=utf-8 ?
Fico no aguardo.
Muito Obrigado.
-
-
Boa Tarde Diogo
Eu não posso usar o código que você postou já que eu já uso ele para anexar meu arquivo html.
mailMessage.Body = strConteudoArquivoHtml;
mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");Qual seria a solução ?
Fico no aguardo
Obrigado.
-
-
Olá pr_tecnologia,
Sugiro que examine a seguinte documentação.
Espero ter ajudado.
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Boa Tarde Marcos
Examinei o link com a documentação.
Mudei meu código e fiz varios testes e o problema só piorou.
Então voltei com meu código.
mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
Desta forma envia o corpo do e-mail. Porem troca os simbolos por ponto de interrogação "?"
Se puder me ajudar eu agradeço.
Fico no aguardo.
Muito Obrigado.
-
-
Boa tarde pr_tecnologia,
Ok, verifique por gentileza as informações deste link. Esta documentação trata do assunto.
Atenciosamente
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Editado Marcos SJ quarta-feira, 12 de agosto de 2015 16:57
-
Voce tem certeza que o HTML que voce le e associa ao body esta com o Encoding ISO-8859-1?
Tem como postar aqui o conteudo desse HTML?
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
-
Olá pr_tecnologia,
Você já tentou utilizar UTF-8?
Atenciosamente
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Boa Tarde Marcos Roberto
Eu acabei de tentar com:
mailMessage.BodyEncoding = Encoding.GetEncoding("UTF-8");
E o e-mail vem com símbolos conforme abaixo:
Em 2014, foram instaladas 96 novas usinas e�licas, um recorde muito positivo, somando � Matriz El�trica Brasileira, ao todo, 2.495,52 MW de pot�ncia. Os estados contemplados com os novos empreendimentos foram Rio Grande do Norte, Rio Grande do Sul, Cear�, Bahia, Pernambuco e Piau�. Destacam-se os dois �ltimos estados, que n�o tinham inser��o e�lica h�, no m�nimo, quatro anos...Leia mais
-
Mas voce pode postar o codigo HTML... realmente precisamos ver qual é o conteudo do arquivo.
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head>
<title> TM on line</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style type="text/css">
<!--
.style5 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 9px;
}
.justificado {
text-align: justify;
}
.style6 {font-family: Arial, Helvetica, sans-serif}
-->
</style>
</head>
<body leftmargin="0" topmargin="0" dir="ltr" bgcolor="#ffffff" vlink="#000000" link="#0033cc" marginheight="0" marginwidth="0">
<!-- ImageReady Slices (cabeca TM on line.psd) -->
<table id="Table_01" align="center" border="0" cellpadding="0" cellspacing="0" width="600" height="800">
<tbody>
<tr>
<td><div align="center"><span class="style5">Se tiver problema para visualizar o conteúdo <a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/Tm-online_07_08_15.html" target="_blank">clique aqui</a></span></div></td>
</tr>
<tr>
<td><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/images/topo.jpg" width="600" height="247" border="0" usemap="#Map2Map">
<map name="Map2Map">
<area shape="rect" coords="9,177,152,225" href="http://www.tecnologiademateriais.com.br/" target="_blank">
<area shape="rect" coords="169,181,319,224" href="http://www.tecnologiademateriais.com.br/" target="_blank">
<area shape="rect" coords="339,166,594,229" href="http://www.feiplar.com.br" target="_blank">
</map></td>
</tr>
<tr>
<td> <table align="center" border="0" width="592">
<tbody><tr>
<td colspan="3"><div align="left">
<p><font size="1" face="Geneva, Arial, Helvetica, sans-serif"><strong><font color="#ffffff">_<font face="Verdana, Arial, Helvetica, sans-serif">__</font></font><font face="Verdana, Arial, Helvetica, sans-serif">PATROCÍNIO</font></strong></font><br>
<a href="http://www.maxepoxi.com.br/" target="_blank"><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/banners/maxepoxi.jpg" alt="" width="593" height="122" border="0" usemap="#Map"></a>
<map name="Map">
<area shape="rect" coords="-82,1832,544,1975" href="http://www.blitz.ind.br/home.asp" target="_blank">
</map>
<br>
</p>
</div></td>
</tr>
<tr>
<td width="385" height="21"> </td>
<td width="45"><div align="right"><font color="#000000" size="1" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nº309</strong> </font></div></td>
<td width="152"><div align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><strong>07 de agosto de 2015</strong></font></div></td>
</tr>
</tbody></table>
<table align="center" border="0" width="99%">
<tbody>
<tr>
<td width="68%" height="97" valign="top" bgcolor="#FAF9F5"><table align="center" border="0" width="100%">
<tbody>
<tr>
<td height="125" valign="top"><p align="justify" class="justificado"><font size="2"><strong><font size="2"><strong><font face="Arial, Helvetica, sans-serif">Petroquímico </font></strong></font><font face="Arial, Helvetica, sans-serif">– </font></strong><font face="Arial, Helvetica, sans-serif"><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota1.html" target="_blank">Edra atua com composites no setor de óleo e gás
</a></u></font></font><font size="1" face="Arial, Helvetica, sans-serif"> <br>
<br>
A Edra é uma empresa 100% nacional que atua desde 1976 no mercado de composites com fibra de vidro. Busca sempre novas tecnologias a fim de superar as expectativas dos clientes e trazer modernas soluções em fibra de vidro. Está ampliando a sua participação no mercado offshore, criando uma filial em Macaé (RJ) para atender imediatamente toda a Bacia de Campos, com equipe treinada e um pequeno estoque para pronta entrega. “A Edra acredita na retomada em curto tempo da Petrobras, aquecendo fortemente o mercado offshore”, enfatiza João Pirillo...<a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota1.html" target="_blank">Leia mais </a></font></p></td>
</tr>
</tbody>
</table></td>
<td width="32%" valign="top"><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/img/nota1.jpg" alt="" width="250" height="188"></td>
</tr>
<tr>
<td valign="top" bgcolor="#FAF9F5"><table align="center" border="0" width="100%">
<tbody>
<tr>
<td height="125" valign="top"><p align="justify" class="justificado"><font size="2"><strong><font size="2"><strong><font face="Arial, Helvetica, sans-serif">Energia eólica </font></strong></font><font face="Arial, Helvetica, sans-serif">– </font></strong><font face="Arial, Helvetica, sans-serif"><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota2.html" target="_blank">Capacidade instalada no Brasil </a></u></font></font><font size="1" face="Arial, Helvetica, sans-serif"> <br>
<br>
Em 2014, foram instaladas 96 novas usinas eólicas, um recorde muito positivo, somando à Matriz Elétrica Brasileira, ao todo, 2.495,52 MW de potência. Os estados contemplados com os novos empreendimentos foram Rio Grande do Norte, Rio Grande do Sul, Ceará, Bahia, Pernambuco e Piauí. Destacam-se os dois últimos estados, que não tinham inserção eólica há, no mínimo, quatro anos...<a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota2.html" target="_blank">Leia mais</a></font></p></td>
</tr>
</tbody>
</table></td>
<td valign="top"><div align="center"><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/img/nota2.jpg" width="250" height="188"></div></td>
</tr>
<tr>
<td valign="top" bgcolor="#FAF9F5"><table align="center" border="0" width="100%">
<tbody>
<tr>
<td height="125" valign="top"><p align="justify" class="justificado"><font size="2"><strong><font size="2"><strong><font face="Arial, Helvetica, sans-serif">Petróleo & Gás </font></strong></font></strong><font face="Arial, Helvetica, sans-serif">-</font> <font face="Arial, Helvetica, sans-serif"><a href="http://www.tecnologiademateriais.com.br/mt/2015/mala_painel_petroleo/protective/petroleo_protective.html" target="_blank">Tratamentos funcionais à base de fluorpolímeros
</a></u></font></font><font size="1" face="Arial, Helvetica, sans-serif"> <br>
<br>
No dia 11 de agosto de 2015, no Everest Rio Hotel, no Rio de Janeiro, será realizada a quinta edição do Painel Petróleo & Gás, um seminário técnico que tem como objetivo mostrar que os plásticos de performance diferenciada (composites, poliuretano e plástico de engenharia) são excelentes materiais para serem aplicados nas construções para este setor. A empresa Protective apresentará, tratamentos funcionais à base de fluorpolímeros...<a href="http://www.tecnologiademateriais.com.br/mt/2015/mala_painel_petroleo/protective/petroleo_protective.html" target="_blank">Leia mais
</a></font></p> </td>
</tr>
</tbody></table></td>
<td valign="top"><div align="center"><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/img/nota3.jpg" alt="" width="250" height="188"></div></td>
</tr>
<tr>
<td valign="top" bgcolor="#FAF9F5"><table align="center" border="0" width="99%">
<tbody><tr>
<td height="144" valign="top">
<div align="justify" class="justificado">
<p align="justify"><font size="2"><strong><font face="Arial, Helvetica, sans-serif">Sampe Brasil </font></strong><font face="Arial, Helvetica, sans-serif"> - <a href="http://sampe.com.br/congressos.html" target="_blank">III Congresso Internacional SAMPE Brasil
</u></a></font></font></p>
<font size="1" face="Arial, Helvetica, sans-serif">
<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } -->
O evento, em sua terceira edição no Brasil, terá o objetivo de apresentar novas tecnologias em composites avançados e processos para o mercado latino-americano. Confira a programação Preliminar...<a href="http://sampe.com.br/congressos.html" target="_blank">Leia mais</a></font></div></td>
</tr>
</tbody></table></td>
<td valign="top"><div align="center"><img src="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/img/nota4.jpg" alt="" width="250" height="188"></div></td>
</tr>
<tr bgcolor="#000000">
<td colspan="2"><font color="#ffffff" size="2" face="Geneva, Arial, Helvetica, sans-serif"><strong>OUTROS DESTAQUES</strong></font></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2"><p><strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Mercado – </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota5.html" target="_blank"><font size="1" face="Geneva, Arial, Helvetica, sans-serif">
Faturamento da indústria cai 6,7% no segundo trimestre
</u></font></a></p></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2"><strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Ferroviário – </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota6.html" target="_blank"><font size="1" face="Geneva, Arial, Helvetica, sans-serif">
Após 3 trimestres com prejuízo, Vale lucra R$ 5,1 bi e supera expectativas
</u></font></a></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2">
<strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Petroquímico - </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota7.html" target="_blank" class="style6"><font size="1">
PESQUISADORES DA PUC-RIO DESENVOLVEM ROBÔS AUTÔNOMOS PARA LIMPEZA E INSPEÇÃO DE DUTOS
</u></font></a></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2"><strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Design – </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota8.html" target="_blank"><font size="1" face="Arial, Helvetica, sans-serif">Empresa brasileira de design inaugura escritório em NY </font></a></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2"><strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Saneamento – </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota9.html" target="_blank"><font size="1" face="Arial, Helvetica, sans-serif">GE mira em novas oportunidades no setor de saneamento
</font></a></td>
</tr>
<tr bgcolor="#FAF9F5">
<td colspan="2"><strong><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Empresas – </font></strong><a href="http://www.tecnologiademateriais.com.br/mt/2015/TM/TM_309/nota10.html" target="_blank"><font size="1" face="Arial, Helvetica, sans-serif">Está publicado o novo portal conjunto da Videolar e Innova
</font></a></td>
</tr>
</tbody></table></td>
</tr>
<tr>
<td><img src="http://www.tecnologiademateriais.com.br/mt/images/TM-on-line_03.jpg" width="600" height="135" border="0" usemap="#Map3"></td>
</tr>
</tbody></table>
<table align="center" border="1" bordercolor="#ffffff" cellpadding="2" width="602">
<tbody><tr>
<td bordercolor="#666666" valign="top" width="590"><div align="justify"><font color="#999999" size="1" face="Arial, Helvetica, sans-serif">Esta
mensagem é enviada com a complacência da nova legislação
sobre correio eletrônico, Seção 301, Parágrafo
(a) (2) (c) Decreto S.1618, Título Terceiro aprovado pelo "105
Congresso Base das Normativas Internacionais sobre o SPAM".
Este E-mail não poderá ser considerado SPAM quando
inclua uma forma de ser removido. Para ser removido em futuros correios,
simplesmente responda indicando no Assunto ou no Corpo da mensagem:</font><font size="1" face="Arial, Helvetica, sans-serif"> <a href="mailto:assinaturas@artsim.com.br?subject=eliminar">REMOVER</a></font></div> </td>
</tr>
</tbody></table>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<p name="Map2">
<map name="Map2">
<area shape="rect" coords="14,176,153,222" href="http://www.revistadoplasticoreforçado.com.br" target="_blank">
<area shape="rect" coords="184,177,331,220" href="http://pubrasil.com.br" target="_blank">
<area shape="rect" coords="355,168,591,229" href="http://www.feiplar.com.br" target="_blank">
</map>
<map name="Map3">
<area shape="rect" coords="327,83,500,120" href="http://twitter.com/tmonline1" target="_blank" />
<area shape="rect" coords="19,44,229,61" href="mailto: consultoria@artsim.com.br" target="_blank">
<area shape="rect" coords="262,51,571,69" href="http://www.tecnologiademateriais.com.br/" target="_blank">
</map>
</p>
</blockquote>
<p name="Map"> </p>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</body></html> -
Eu te enviei um email com o meu email. Poderia me enviar um email a partir do teu sistema?
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
-
-
Olá pr_tecnologia,
Tudo bem?
Mais uma vez venho pedir que não crie threads duplicadas no Fórum. Esta é mais uma entre várias das quais mesclamos para manter a ordem no fórum. É uma regra do fórum. Agradeço a sua compreensão.
Obrigado.
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
O problema esta aqui:
StreamReader objStreamReader = new StreamReader(strCaminhoArquivo); string strConteudoArquivoHtml = objStreamReader.ReadToEnd();
por algum movito a leitura do arquivo esta modificando o encoding. Tanto que o arquivo anexo esta correto.
O construtor dessa classe possui uma implementaçao que permite definir o encoding:
Pelo que eu vi o arquivo é ansi e vc esta transformando em UTF-8. Tente diferentes encondigs ate achar um que funcione.
att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Sugerido como Resposta Marcos SJ quinta-feira, 13 de agosto de 2015 13:11
-
Bom dia Willian
Tentei todos os Enconding do link que você enviou que são aceitos pelo .NET
iso-8859-1
iso-8859-8
windows-1252
utf-7
utf-8
utf-16
utf-32
e esse ultimo. Porem nenhum deles conseguiu tirar os símbolos dos acentos.
Não sei como resolver.
mailMessage.BodyEncoding = Encoding.GetEncoding("us-ascii");
Se puder me ajudar eu agradeço.
Fico no aguardo.
Obrigado.
-
Qual ferramenta voce esta usando para criar o arquivo HTML?
Eu fiz aqui um procedimento que deu certo:
1- Abra o arquivo HTML usando o Notepad++
2- No menu Encoding (eu tenho a versao em ingles nao sei como ficou a traduçao) use a opçao Convert to UTF-8
3- Salve o arquivo.
Agora uma pequena modificaçao no codigo:
StreamReader objStreamReader = new StreamReader(strCaminhoArquivo,true); string strConteudoArquivoHtml = objStreamReader.ReadToEnd();
o true no segundo parametro diz ao StreamReader identificar o encondig do arquivo.
Se o arquivo nao é modificado (original) o encondig é UTF-8, o que certamente é falso.
Usei outras ferramentas aqui e todas elas nao foram capazes de identificar qual é o encoding do arquivo, mas convertendo o arquivo em UTF-8 seu codigo passa a funcionar.
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Marcado como Resposta Marcos SJ quinta-feira, 13 de agosto de 2015 18:56
-
tenta isso
mailMessage.Body = HttpUtility.HtmlDecode(strConteudoArquivoHtml);
removendo essa linha
mailMessage.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
- Editado Marcelo Gustavo quinta-feira, 13 de agosto de 2015 17:27
-
Marcelo Gustavo
Mudei a linha de código porem ainda não resolveu o problema.
StreamReader objStreamReader = new StreamReader(strCaminhoArquivo);
string strConteudoArquivoHtml = objStreamReader.ReadToEnd();
MailMessage mailMessage = new MailMessage();
mailMessage.Body = strConteudoArquivoHtml;
//mailMessage.BodyEncoding = Encoding.GetEncoding("gb2312");
mailMessage.Body = HttpUtility.HtmlDecode(strConteudoArquivoHtml);
//mailMessage.Body = "SEM O ARQUIVO HTML NO CORPO DO E-MAIL";
mailMessage.IsBodyHtml = true;
//mail.Headers.Add ("Disposição-Notificação-To", "<someaddress@mydomain.com>");
mailMessage.Headers.Add("Disposition-Notification-To", "paulo@artsim.com.br"); -
hum entendi me mostra aqui o seu globalization que ta no webconfig
ve se ele ta assim
<globalization culture="pt-BR" uiCulture="pt-BR" requestEncoding="iso-8859-1" responseEncoding="iso-8859-1" fileEncoding="iso-8859-1" />
"SEM O ARQUIVO HTML NO CORPO DO E-MAIL";
isso que aparece no seu email ??? no corpo .... ai nao tem palavras com ascentos .testa novamente em outra tela
- Editado Marcelo Gustavo quinta-feira, 13 de agosto de 2015 19:54
-
O problema nao esta na codificaçao do email enviado. Quando voce faz:
mailMessage.Body = strConteudoArquivoHtml;
a variavel strConteudoArquivoHtml ja esta corrompida e com os "?" no lugar dos acentos... tudo isso porque seu arquivo html esta em um formato nao reconhecido pelo C#.
Como eu disse, quando eu forcei que o arquivo HTML fosse do tipo UTF8, o seu codigo passou a funcionar.
Att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Editado William John Adam TrindadeModerator quinta-feira, 13 de agosto de 2015 19:57
- Marcado como Resposta ricardoti2012 quinta-feira, 13 de agosto de 2015 20:32
-
Marcelo Gustavo
Segue meu arquivo web.config
<?xml version="1.0" encoding="utf-8"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=sqlserver01.tecnologiademateriaistttt.com.br;Initial Catalog=tecnologiademateriai;Persist Security Info=True;User ID=tecnologiademateriai;Password=777777" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<pages>
<namespaces>
<add namespace="System.Web.Optimization" />
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
</controls></pages>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" defaultUrl="~/" />
</authentication>
<profile defaultProvider="DefaultProfileProvider">
<providers>
<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</profile>
<membership defaultProvider="DefaultMembershipProvider">
<providers>
<add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
<roleManager defaultProvider="DefaultRoleProvider">
<providers>
<add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</roleManager>
<!--
If you are deploying to a cloud environment that has multiple web server instances,
you should change session state mode from "InProc" to "Custom". In addition,
change the connection string named "DefaultConnection" to connect to an instance
of SQL Server (including SQL Azure and SQL Compact) instead of to SQL Server Express.
-->
<sessionState mode="InProc" customProvider="DefaultSessionProvider">
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246" />
<bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780ccd10d57b246" />
<bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.1.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
</configuration> -