2013-10-20 46 views
1

好吧,我想这其中一些容易谷歌,但我找到了答案,并没有解决我的问题特殊字符UTF8在Safari中无法显示

在Chrome中我的RSS源正在寻找这样

"¿Qué es un serum antimanchas?" 

可是其余的字符是确定..

在Safari中,是oposit这一行看起来不错,但其余字符是wrong..and它们看起来像

Espect�culo 

我有这个在我的头至极它想工作,无法找到问题,

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es"> 
<head> 


    <title>Pcweb</title> 

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

注:所有文件都保存与编码为崇高编辑UTF8。

+0

我的Safari 5.1.7(在Windows上)无法显示。我还没有想出如何解决它。 – Ryan

回答

0

您在Chrome中看到的是UTF-8编码的数据被误解为ISO-8859-1或windows-1252编码。例如,U + 00BF“¿”是UTF-8中的0xC2 0xBF。作为ISO-8859-1数据处理,你得到U + 00C2“U + 00BF”¿“。

从给出的数据中,不可能说出什么问题。我的猜测是数据是通过HTTP Content-Type标题发送的,该标题声明编码为ISO-8859-1。 URL将需要验证这个假设。

字符“ ”表示字符级别的数据错误:数据包含字符,该字节不表示字符编码中的任何字符或字符的多字节表示的一部分。当ISO-8859-1被错误地解释为UTF-8编码时,经常遇到这种情况。

看起来数据包含UTF-8编码数据和ISO-8859-1编码数据的混合。解决方法是修改系统,以便始终如一地使用UTF-8,或者至少在将数据编写为发送给用户代理时将所有内容都转换为UTF-8。