电子邮件中如果 utf-8 字符没有破折号,是否会导致字符集无法读取?

电子邮件中如果 utf-8 字符没有破折号,是否会导致字符集无法读取?

电子邮件消息标题中没有 utf-8 破折号会导致电子邮件客户端显示错误文本吗?

Subject: Newsletter
MIME-Version: 1.0
From: <>
Reply-To: <>
Content-Type: text/plain; **charset=utf8**
Message-Id: <>
Sender: www-data <>
Date: Mon, 29 Aug 2011 12:19:37 +0200
X-SmarterMail-Spam: SPF_None

相反的是:

Return-Path: <>
Received: from g with SMTP;
   Tue, 30 Aug 2011 17:19:03 +0200
Received: from www-data by serwis with local (Exim: PJ server v1.0 
    id <>
    for <>; Tue, 30 Aug 2011 17:18:53 +0200
To: <>
Subject: <>
From: WWW <>
MIME-Version: 1.0
Content-type: text/plain; **charset=utf-8**
Message-Id: <>
Sender: www-data <>
Date: Tue, 30 Aug 2011 17:18:53 +0200
X-SmarterMail-Spam: SPF_None

我之所以问这个问题,是因为我们注意到一些电子邮件中如果有charset utf8波兰字符则难以阅读。

答案1

来自维基百科中有关 UTF-8 的条目

官方名称是“UTF-8”。所有字母均大写,名称带连字符。与编码相关的所有文档都使用此拼写。
或者,所有符合互联网号码分配机构 (IANA) 列表(包括 CSS、HTML、XML 和 HTTP 标头)的标准都可以使用名称“utf-8”,[15]因为声明不区分大小写。

其他省略连字符或用空格替换的描述,例如“utf8”或“UTF 8”,不被管理标准接受为正确描述。尽管如此,大多数代理(例如浏览器)都可以理解它们,因此旨在描述现有实践(例如 HTML5)的标准可能实际上要求识别它们。

所以基本上utf8在技术上是不正确的(最糟糕的错误™),并且程序没有义务接受它并做正确的事情(尽管许多人可能出于善意这样做)。

相关内容