代码之家  ›  专栏  ›  技术社区  ›  Keltex

如何在ASP.NET中发送中文字符集纯文本电子邮件?

  •  1
  • Keltex  · 技术社区  · 16 年前

    我有一个ASP.NET应用程序,需要用韩文发送电子邮件。这些电子邮件以明文形式发送。

    但是当收到电子邮件时,它们看起来是这样的:

    ?名字????:???????.

    ????????????????????????????????????????? ????????????????????????????????????????? ?????????????1-888-123-4567?????????????? info@example.com??????????? ???????????????????.

    目前我没有设置编码。只是使用默认值。理想情况下,我希望编码可以处理各种电子邮件。希望我不必为每封邮件设置编码。

    2 回复  |  直到 16 年前
        1
  •  3
  •   Renaud Bompuis    16 年前

    您基本上有两种方法来编码电子邮件部分:

    1. 为您的电子邮件使用韩文代码页,这样不使用Unicode的人仍然可以查看它(类似字符集 ISO-2022-KR x-windows-949 ,我不知道这三个中哪一个最常见):

      Content-Type: text/plain;
      charset="EUC-KR"
      Content-Transfer-Encoding: quoted-printable
      
    2. 使用utf8编码,这是目前的首选方式。
      在任何情况下,接受者必须有适当的支持 Asian languages installed on their machine 以便正确显示消息。

      Content-Type: text/plain; charset=UTF-8;
      Content-Transfer-Encoding: 8bit
      

    下面有几篇好文章解释了如何正确地实现这一点:

        2
  •  1
  •   Adam    16 年前

    尝试将电子邮件的编码设置为UTF-8。

    我想这是你在邮件头中需要的行:

    Content-Type: text/plain; charset=UTF-8
    

    希望这有帮助

    亚当