タグ

UTF-8に関するa-hamahamaのブックマーク (6)

  • UCS-2とUTF-8

    最終更新 2003-11-11 UCSとUTF ユニコードで文書を作るとき,文字コードの方式が2種類,あるいはそれ以上あることに気が付かれるかもしれません。例えば,一つはUnicodeとあるのに対し,もう一つはUnicode (UTF-8)と表記されているかもしれません。この2つは,また,その違いは何でしょうか(前者はUTF-16の一形態なのですが…)。 UCS-2とUCS-4 ユニコードが採択されることになった多言語用の文字コードセット,ISO-10846-1は,16ビット(16桁の二進数)でそれぞれの文字を表します。それをUCS-2 (Universal Character Set coded in 2 octets,「2つのオクテットでコードされたユニバーサル文字セット」)と称します。オクテットとは文字長の単位としての8ビット(8桁の二進数)のことです。 ユニコードの特定の文字は,例

  • Visual Studio で UTF-8 でC++を書いたら心が折れそうになった件 - Hikware.Tech

    Visual Studio で C++ のソースを UTF-8 で書くと執拗な嫌がらせを受けるが、他の開発環境とクロスで開発する以上、UTF-8 で書きたい。 Visual Studio 2017 になってなお C# は普通に UTF-8 でソースを書けてたんで油断してたけど、2017 年にもなってなお、C++ のソースは UTF-16 か、標準のマルチバイトコード(日ならS-JIS)のどちらかで書く前提 になっていて、UTF-8 でコメント書いただけでも、 的なワーニングが出る。超うぜえ!何これ超うぜえ!。最新の開発環境でこんな仕打ちを受けるとは思ってもいなかった。 さらに腹立つのが、Visual Studio はプロジェクトを新規作成すると、わざわざ日語のコメント付きのテンプレートソースを出力してくれるんだけど、それがなんでか UTF-8。なので当然、初回ビルドからワーニング出まく

  • Loading...

  • Rubyの内部文字コードはUTF-8ではない...だと...?!|TechRacho by BPS株式会社

    こんにちは、hachi8833です。 少し前に、babaさんから「Rubyの内部文字コードはUTF-8じゃないよ」とツッコミがありました。 (追記: 上は会話の途中から切り取りましたのでご了承ください) いきなりの展開にくらくらきましたが、babaさんはさらにたたみかけます。 こうしたことはとっくにご存じの方も多いと思いますが、「Rubyといえば2.0以来UTF-8完全対応なんじゃないの」と勝手に思い込んでた私は脳に掌底をらったような思いです。ああ、でもこういうことがあるから面白い。 ⚓ プログラミング言語と内部文字コードの関係 まず最初に押さえておきたい点です。プログラミング言語で文字コードに関連する部分は、「文字列」「正規表現」「入出力」「コード中の文字リテラル(""の中など)」「コード中の文字リテラル以外の要素(変数名など)」「ファイル名」などが中心になります。そして文字列に関連し

    Rubyの内部文字コードはUTF-8ではない...だと...?!|TechRacho by BPS株式会社
  • プログラミング言語における文字コードの話

    世の中がほぼUnicode前提になってめでたしめでたし。とはいかなかった現実の話。 String型でできる文字列処理とか、ソースコード自体、特に識別子で使える文字とか。 軽くおさらい: Unicode まあいろんなところでいろんな人が書いてると思うのでさらっと概要だけ。 Unicodeは、元々、「65,536文字あれば十分だろ」とかいう幻想の元、2バイト固定長の文字コードとして作られていました。 もちろん足りなくて、ビット数を拡張。基が2バイトのままでこの拡張した分を取り扱えるようにしたのが今のUTF-16で、拡張分は2文字分(4バイト)を使って表現。 この、2文字分使って1文字を表すやつのことをサロゲートペア(surrogate pair: 代理対)と呼びます。 あと、ASCII文字も2バイトになるのを欧米人が嫌って、ASCII文字はASCIIコードのまま、逆に漢字・ひらがな・カタカナ

    プログラミング言語における文字コードの話
  • fudist - UTF-8 → cp932(Shift_JIS)変換表

    UTF-8にはcp932(Shift-JIS)に存在しない文字があるため、cp932(Shift_JIS)前提のシステムで使用することができないことがあります。 基的に ♥ ♠ ♦ ♣ のようにcp932(Shift_JIS)に存在しない記号は (はぁと) や外字などへ適当に変換するしかありません。 ただし実際にはcp932(Shift_JIS)でも置換可能な文字だけが問題で変換エラーになっているケースが多数あります。 ページでは文書ファイルをUTF-8からcp932(Shift-JIS)に変換するとき単純置換してさほど問題ない文字の対応表を記します。 cp932(Microsoft定義のShift_JIS) と Shift_JIS とは厳密に言うと ~ など一部の文字コードが異なります。 このためWindowsLinuxでunicode(UTF-8)へ変換した場合異なる文字コードに

  • 1