-3

上が英語版、下がスペイン語版の本文のメールを送信しようとしています。

    string body = "elevación del nivel de los estándares";

体のスペイン語部分は次のように表示されますelevaci?n del nivel de los est?ndares

スペイン語の文字が正しく表示される英語とスペイン語の両方のメールを送信するにはどうすればよいですか?

4

1 に答える 1

8

物件を見てみるとMailMessage.BodyEncoding、以下のことがわかります。

デフォルトの文字セットは「us-ascii」です。

送信する前にエンコードを変更してみてください:

message.BodyEncoding = Encoding.UTF8;

( を使用して送信していると仮定していますSystem.Net.Mail.MailMessage。直接使用している場合はSystem.Net.Mail.SmtpClient、クラスの使用に切り替えて、MailMessageそのインスタンスを に渡すことをお勧めしますSmtpClient。)

于 2013-06-05T18:37:46.527 に答える