1

これはGoogleにとって簡単なことだと思いましたが、見つけた答えは問題を解決しませんでした

Chrome では、RSS フィードは次のようになります

"¿Qué es un serum antimanchas?" 

でもそれ以外のキャラはどうでもいい…

Safari では逆です。この行は問題ないように見えますが、残りの文字は間違っています...そして、それらは次のようになります

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 のエンコードで保存されます。

4

1 に答える 1

1

Chrome で表示されるのは、ISO-8859-1 または Windows-1252 でエンコードされたものとして誤って解釈された UTF-8 でエンコードされたデータです。たとえば、U+00BF “¿” は、UTF-8 では 0xC2 0xBF です。これを ISO-8859-1 データとして扱うと、U+00C2 “” U+00BF “¿” となります。

与えられたデータから、何が問題なのかを判断することは不可能です。私の推測ではContent-Type、エンコーディングを ISO-8859-1 として宣言する HTTP ヘッダーを使用してデータが送信されます。この仮説を検証するには、URL が必要です。

文字「�」は、文字レベルでのデータ エラーを示します。データには、適用されている文字エンコーディングで文字を表さないバイト、または文字のマルチバイト表現の一部が含まれています。これは、ISO-8859-1 が UTF-8 でエンコードされていると誤解されている場合に最もよく発生します。

データには、UTF-8 でエンコードされたデータと ISO-8859-1 でエンコードされたデータが混在しているようです。この問題を解決するには、一貫して UTF-8 を使用するようにシステムを変更するか、少なくともユーザー エージェントに送信するデータを作成するときにすべてを UTF-8 に変換します。

于 2013-10-21T05:25:06.880 に答える