-1

Unicode、ASCII、コード ページ、すべての歴史、UTF-8、UTF-16 (UCS-2)、UTF-32 (UCS-4) の発明、およびそれらの使用者などについてよく読んでいますが、まだいくつかの質問があり、答えを見つけるのに苦労しましたが、できませんでした。助けていただければ幸いです。

1 - Unicode は文字をエンコードするための標準であり、各文字のコード ポイントを指定します。U+0000 のようなもの (例)。これらのコード ポイント (\u0000) を含むファイルがあると想像してください。アプリケーションのどのポイントでそれを使用するのでしょうか?

これはばかげた質問かもしれませんが、アプリケーションのどの時点でそれを使用するのか本当にわかりません。エスケープを使用してこれらのコードポイントを持つファイルを読み取ることができるアプリケーションを作成しています\u。それを読み取ってデコードできることはわかっていますが、次の質問です。

2 - どの文字セット (コード ページ) に変換する必要がありますか? utf8_to_unicodeorutf8-to-utf16のみという名前を使用している C++ ライブラリをいくつか見ましたがutf8_decode、これが混乱の原因です。

このような回答が表示されるかどうかはわかりませんが、次のように言う人もいるかもしれません: 使用するコード ページに変換する必要がありますが、アプリケーションを国際化する必要がある場合はどうすればよいでしょうか?

3 - C++ で端末に非 ASCII 文字を表示しようとすると、紛らわしい単語が表示されるのではないかと思っていました。問題は、表示される文字がフォントである理由は何ですか?

#include <iostream>

int main()
{
    std::cout << "ö" << std::endl;

    return 0;
}

出力 (Windows):

├Â</p>

4 - そのプロセスのどの部分にエンコーディングが入りますか? エンコードし、コードポイントを取得して、フォントで等しい単語を見つけようとしますか?

5 = WebKit は、Web ブラウザーで Web ページをレンダリングするためのエンジンです。文字セットを UTF-8 として指定すると、すべての文字でうまく動作しますが、別の文字セットを指定すると、フォントは関係ありません。 m を使用して、どうなりますか?

<html>
<head>
    <meta charset="iso-8859-1"> 
</head>
<body>
    <p>ö</p>
</body>
</html>

出力:

以下を使用して動作します:

<meta charset="utf-8">

6 - ファイルを読み取ってエンコードし、すべてのコード ポイントを取得して、ファイルを再度保存する必要があるとします。エンコードして保存する必要がありますか (\u0000)、または最初にデコードして再度文字に変換してから保存する必要がありますか?

7 - なぜ「ユニコード」という言葉は少しオーバーロードされており、時々 utf-16 を意味すると理解されるのですか? (ソース

それは今のところすべてです。前もって感謝します。

4

1 に答える 1