gpt4 book ai didi

email - 邮件列表中的汉字显示为问号?

转载 作者:行者123 更新时间:2023-12-02 14:36:59 26 4
gpt4 key购买 nike

我订阅了一个邮件列表,其内容主要是中文。每次我收到电子邮件时,每个汉字都被替换为。然后我深入研究电子邮件标题并发现

> Content-Type: text/plain; charset="utf-8"

我认为这就是问题所在,要解决这个问题,我需要将字符集更改为与中文兼容的字符集。但是我应该在哪里更改它呢?

我认为我无法更改它,因为无论我使用哪种邮件客户端,问题都会出现。邮件列表在 Python mailman 上运行。

最佳答案

Content-Type: text/plain; charset="utf-8"

这不是问题。

UTF-8 可以显示每种语言的每个字符。实际发生的情况很可能是,相关网站将数据存储在不是真正的 UTF-8 的数据库中,例如 MySQL utf8_ 排序规则和字符集 which are not true UTF-8

如果不是数据库存储问题,则问题来自生成电子邮件或将数据插入电子邮件模板时使用的字符集,而电子邮件的来源不是 UTF-8 或相应的全中文字符集。

如:

  • HTML 输入表单未设置为 UTF-8(或正确的中文字符集),
  • HTML 输入表单容器网页未设置为 UTF-8,HTML 接收表单/代码未设置为 UTF-8(或正确的中文字符集),
  • 电子邮件模板生成器未设置为 UTF-8(或正确的中文字符集)。
  • 发送服务器不使用默认的 UTF-8 header 。

此外,虽然您声明“内容主要是中文”,但这并没有缩小太多范围,因为至少有五种主要中文书面语言和许多使用相同或非常相似字符的较小语言套。

您希望使用 International Resource Identifiers 和 UTF-8 编码构建电子邮件。 UTF-8 实现了 unicode,在 unicode 中,每个字符都有一个代码点,对于所有汉字来说,代码点位于 0x4E00 到 0x9FFF(2 个字节)之间。

但是 UTF8 不会仅通过存储代码点来对字符进行编码(UTF32 就是这样做的)。相反,它使用更复杂的标准,使所有中文表意文字的长度为 2 或 3 个字节。

供引用:Python Mailman and UTF-8 details(2008 年问题)和 character conversion guide(2009 年问题)。还有 this Stackoverflow anwser

关于email - 邮件列表中的汉字显示为问号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36962267/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com