1. ホーム
  2. unicode

[解決済み】UnicodeとUTF-8の違いは何ですか?重複

2022-04-20 05:59:44

質問

考えてみてください。

というのは本当でしょうか? unicode=utf16 ?

多くの人が、Unicodeはエンコーディングではなく標準だと言っているが、ほとんどのエディタはUnicodeとして保存することをサポートしている エンコーディング 実際に

どのように解決するのですか?

<ブロッククオート

ほとんどのエディタは、Unicodeエンコーディングでの保存をサポートしています。

これは、Windowsが犯した不幸な誤認識です。

Windows は Unicode 文字列のメモリ保存形式として内部的に UTF-16LE エンコードを使用しているため、これを Unicode テキストの自然なエンコーディングとみなしています。Windowsの世界では、ANSI文字列(現在のマシンのシステム・コードページで、完全に移植不可能な対象)と、Unicode文字列(UTF-16LEとして内部に格納されている)が存在します。

これはすべて、Unicode の初期に考案されたもので、UCS-2 では不十分だと気づく前、そして UTF-8 が発明される前のことです。このため、WindowsのUTF-8へのサポートは全体的に貧弱です。

この誤った命名法は、ユーザーインターフェースの一部となりました。Windows のエンコーディング サポートを使用して、さまざまなエンコーディングを提供するテキストエディタは、UTF-16LE を「Unicode」、UTF-16BE を「Unicode big-endian」と自動的に不適切に表現してしまいます。

(Notepad++のようにエンコーディングを自分で行う他のエディタにはこの問題はありません)。

ANSI」文字列は、ANSI規格に基づいたものではありません。