我编写了一个脚本来读取邮箱中的电子邮件。
在一些电子邮件中,我将一些数据转换为破坏我进一步处理的 wiered 字符。
这些字符看起来像这样http://brucejohnson.ca/HTMLCharacters13.html
知道如何将它们转换为原始内容。
我编写了一个脚本来读取邮箱中的电子邮件。
在一些电子邮件中,我将一些数据转换为破坏我进一步处理的 wiered 字符。
这些字符看起来像这样http://brucejohnson.ca/HTMLCharacters13.html
知道如何将它们转换为原始内容。
如果脚本为您提供这些字符,那么您有两个选择,按原样查看字符,或查看该字符的等效数字(以各种基数 - 八进制、十六进制等)。
您确定您的脚本没有尝试读取加密邮件,并且您的脚本工作正常吗?
尝试通过您编写的函数/脚本放置一些虚拟测试数据,看看它是否产生您期望的输出。
希望这可以帮助
您需要先检查电子邮件标头中的字符集编码。
完成此操作后,您可以选择 2 种方法中的 1 种,更改 HTML 中的字符集或将字符集(如果可能)更改为您已经使用的字符集(可能是 UTF-8)
如果您动态更改标题中的 HTML 字符集,那么您最大的问题是用户需要在其浏览器设置中指定正确的字符集,例如我的设置为 UTF-8 但是我的电子邮件是 ISO-8859-1 所以如果每次我查看需要更改浏览器字符集的网站时,我都会使用这种方法,但我的一个朋友将 ISO-8859-1 作为他的正常字符集,所以他不会有任何问题。
如果您将字符编码为 UTF-8(例如 php 中的 utf8_encode),您需要确保内容不在 UTF-8 中,否则您可能会发现编码函数会创建其他无效字符。
我处理这个问题的方法基本上是解码电子邮件的 mime 标头,然后在 PHP 中使用 preg_match 来检测正在使用的字符集,从那里我将编码运行到 UTF-8 或不运行。
这是一项非常复杂的活动,有时会根据电子邮件的发件人处理邮件和各种字符集,您事先并不真正知道将使用什么字符集,因此您需要真正了解各种字符集,以及如何最好地存储它们存储它们以及如何最好地显示它们,然后您需要将其转化为您的应用程序和目标市场。
祝你的应用好运
你有没有检查过字符编码它必须是UTF-8
。如果是western europian then change to UTF-8