ロケールをUTF-8などのマルチバイトエンコーディングに設定すると、どのような影響がありますか?

ロケールをUTF-8などのマルチバイトエンコーディングに設定すると、どのような影響がありますか?

アメリカ人として、私は確かにロケールでen.UTF-8またはISO-8859-1エンコーディングを選択できます。

ほとんどのガイドではUTF-8エンコーディングを使用することをお勧めしますが、マルチバイトエンコーディングであることは少し心配です。これを使用すると、どのような結果が発生しますか?いくつかのテキストファイルに迷惑な文字シーケンスがありますかt h a t l o o k l i k e t h i s?これら2つのオプションの長所と短所は何ですか?

たとえば、グラフィックウィンドウマネージャでブラウザを使用しているとします。 ISO-8859-1をロケールとして選択したため、ブラウザはUTF-8文字を表示できませんか?

答え1

ロケール仕様:

  1. 端末でどの文字を受信して​​出力できますか?
  2. 端末アプリケーションでどの文字を受信して​​出力できますか?
  3. アプリケーション言語

グラフィックアプリケーションに影響を与える可能性はほとんどありません。

提供された例はUTF-16エンコーディングで、最小データ単位は16ビット/ 2バイトです。 iconv.

C/ISO-8859-1に切り替えないでください。

  1. ASCIIで処理されていないテキストは処理できません。
  2. ASCIIで処理されていない文字はコンソールに表示できません。

最後に、UTF-8はマルチバイトエンコーディングです。ただASCII が適用されないシンボルの場合。 ASCIIテキストはUTF-8として扱うことができます。

この回答も確認してください。UTF-8とISO-8859-1の違いは何ですか?

関連情報