web-dev-qa-db-ja.com

Ubuntuで中国語の文字が表示される-エンコードの問題

Ubuntu 14.04 32ビットを実行しています。ターミナル、ファイル、MySQLターミナルなどで中国語の文字を表示するという奇妙な問題に直面しています。中国語の文字は?????として表示されます。いくつかのグーグル検索の後、実行中のロケールがLC_ALL空を返していることがわかりました。 LC_ALLをen_GB.UTF-8にエクスポートすると、?????ダイヤモンド記号のようないくつかの特殊文字に置き換えられます。

しかし、(別のUbuntu PCから)SSHを介してこのシステムに接続すると、LC_ALLを設定した後、漢字を適切に表示できます。 LC_ALLがない場合、中国語の文字は?????として表示されます。

LC_ALLをエクスポートせずに中国語の文字を表示できる、同様の環境を実行している別のシステムがあります。さらに、ロケールはLC_ALLを空として返します。

システム間にエンコードの違いがあるか、または一部のフォントが利用できない可能性があると思います。

この問題のあるPCに不足しているものや不足しているパッケージはありますか?システム間でロケールが同じであることを確認するにはどうすればよいですか?また、Ubuntuで中国語の文字または他の外国の文字を表示するために必要なパッケージは何ですか?

2
user3066279

システムにロケールが定義されていないようです。 en_GB.UTF-8または適切と思われるロケールに設定する必要があります。


現在のロケール設定の表示:

locale -a

ロケールをen_GB.UTF-8:に設定

Sudo locale-gen en_GB.UTF-8
Sudo update-locale LANG=en_GB.UTF-8

ロケール設定の編集:

ロケール設定を手動で調整する必要がある場合は、/etc/default/localeをお気に入りのテキストエディターで編集できます。あなたの場合、これは必要ないはずです。

1
Helio