UTF-8をいただき、ありがとうございます(一般的に)世界に設定された任意の文字のための「安全な」エンコーディングです。 (常に効率的であるとは限らず、UnicodeがCJKスクリプトを「統一ハン」モデルでアンダー・プレゼンテーションしているのですが... ...)
しかし、あなたのインターフェース・プログラム)はUTF-8との間で正しく変換されません。たとえば、ISO-8859-15やMS-DOSなどの1バイトのヨーロッパ言語エンコーディングを使用して、UTF-8データ(1文字をさまざまなバイト数に分散できる)のように表示されます。 CP-1451またはそれに類するもの。
あなたは間違っておそらく正しくデータを格納が、ロードそれをしています。あなただけmysql
端末プログラムまたは類似を使用している場合は、お使いの端末がUTF-8を使用するように設定されていることを確認します(Unix/Linuxシステム上で、locale
はおそらく、.utf8
で終わるものになるはずです例えば鉱山はLANG=en_US.utf8
あり)
を
GUIツールなどを使用してデータを取得する場合は、その文字セットの設定/環境設定パネルを確認してください。
あなたが書いたアプリケーションに誤って翻訳された文字を戻す場合は、言語の設定ツールを調べてください。 (| HTML | XHTML XML)ファイルでcharset=utf8
を宣言した。これは、Webに送信されている場合、あなたは確認して、(おそらく、INSERT
ルーチンは右のそれを持っていますが、SELECT
ルーチンは、それが間違っているか?)
をと適切な場所、またはは、データベースからテキストを挿入するときにiconv
のようなものを使用して、UTF-8から文書の文字セットに変換し直します(可能な場合)。 (ほとんどの非Unicode文字セットはUnicodeのサブセットを表すことができます;例えば、ISO-8859-15セットはヨーロッパ言語をカバーする上でまともな仕事をしますが、キリル文字、アラビア文字、またはCJK文字書記システムをサポートしていません)Perlでは、パス引数をopen
に使用するか、binmode
を使用して、 "ファイルハンドル"ストリームに透過文字セット変換レイヤーを設定することができます。
どのようなプログラミング言語をお使いですか?たとえば、PHPの場合は、データベースに格納する前にデータをmb_convert_encodingしてください。 – marcocamejo
私はPHPを使用しています。 mb_convert_encodingでどのような引数を使用したいですか? – user418775