[[Open棟梁Project>http://opentouryo.osscons.jp/]] - [[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>文字コード]]

* 目次 [#t9e0c03a]
#contents

*概要 [#v019a889]
日本の文字コード(JIS文字・漢字コード)について纏める。

-Windowsで、Shift-JIS(文字コード)で表現できる範囲は、JIS X 0208(キャラクタ セット)までの範囲である。
-それ以上のキャラクタ セット(JIS X 0212 ~)は、Unicode(文字コード)でのみサポートされる文字が混じる 。

-GT書体などの文字セットには、Unicodeにも無い文字が含まれる。

-[参考] : GT書体 – Wikipedia~
http://ja.wikipedia.org/wiki/GT%E6%9B%B8%E4%BD%93

*JISコード [#r36086ab]

-日本の文字コード - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/character/japan.html

-文字コード表 JISコード(ISO-2022-JP)~
http://charset.7jp.net/jis.html

-ISO-2022-JP - Wikipedia~
http://ja.wikipedia.org/wiki/ISO-2022-JP
--俗に「JISコード」と呼ばれることもある。

--文字集合
---JIS X 0211のC0集合(制御文字)
---JIS X 0201のラテン文字集合
---ISO 646の国際基準版図形文字
---JIS X 0208の1978年版 (JIS C 6226-1978) 1983年および1990年版
---JIS X 0201の片仮名文字集合は利用できない。

**JIS文字コード [#qdfd500c]

-JIS X 0201~
http://ja.wikipedia.org/wiki/JIS_X_0201
--JIS X 0208にはJIS X 0201にあるほぼすべての文字がある・重複する。
--JIS X 0211 (ISO/IEC 6429) で規定される制御文字集合と組み合わせて使用する。
--通称:ANKコード
--旧規格番号はJIS C 6220。

**JIS漢字コード [#k820f979]
http://ja.wikipedia.org/wiki/JIS%E6%BC%A2%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89

-JIS X 0208(非漢字、第1、第2水準漢字)~
http://ja.wikipedia.org/wiki/JIS_X_0208
--収録
---ひらがな、かたかな、漢字、全角記号などの2バイト文字。
---漢字コード部分、~
よく使われる第1水準の漢字2,965字~
あまり使われないが、ないと不便な第2水準の漢字3,390字
--通称:JIS基本漢字

-JIS X 0212(非漢字、補助漢字)~
http://ja.wikipedia.org/wiki/%E8%A3%9C%E5%8A%A9%E6%BC%A2%E5%AD%97
--収録
---JIS X 0208にない文字を集めた文字集合
---使用頻度の低い文字で構成される第3水準の漢字および非漢字。
--通称:JIS補助漢字

-JIS X 0213(非漢字、第1~第4水準漢字)~
http://ja.wikipedia.org/wiki/JIS_X_0213
--JIS X 0208を包含し更に第三・第四水準漢字などを加えた上位集合

--収録
---JIS X 0208の6,879字
---第3水準の漢字1,259字(うち、10字は2004年の改定時に追加)
---第4水準の漢字2,436字
---非漢字659字

--通称:JIS拡張漢字、2000JIS、JIS第3水準・第4水準漢字

-JIS X 0221(国際符号化文字集合)~
http://ja.wikipedia.org/wiki/JIS_X_0221
--ISO/IEC 10646に対応するJIS規格。
--通称:UCS

**通称 [#nb77a8e7]
***通称1 [#x2d0859c]

-78JISまたはJIS78~
1978年に制定されたJIS C 6226:1978

-83JISまたはJIS83:~
1983年に制定されたJIS C 6226:1983(JIS X 0208:1983)

-90JISまたはJIS90:~
1990年に制定されたJIS X 0208:1990(JIS X 0212:1990を含める場合もある)

-97JISまたはJIS97:~
1997年に制定されたJIS X 0208:1997

-2000JISまたはJIS2000:~
2000年に制定されたJIS X 0213:2000

-2004JISまたはJIS2004:~
2004年に制定されたJIS X 0213:2004

***通称2 [#wae056df]
-JIS X 0201
--ANKコード

-JIS X 0208
--JIS漢字コード
--JIS漢字
--JIS第1第2水準漢字

-JIS X 0212
--JIS補助漢字

-JIS X 0213
--JIS拡張漢字
--2000JIS
--JIS第3水準・第4水準漢字

*JIS2004関連 [#k609c92e]
JIS2004(JIS X 0213:2004)
*[[JIS2004関連]] [#k609c92e]

JIS2004はJIS X 0208:1997(いわゆるJIS97)を拡張し、~
JIS第三水準文字・JIS第四水準文字を含む4344文字を追加した文字コード。
*JIS漢字の制定の軌跡 [#afe865c3]
※ 2009年1月現在
|規格一般名|情報システム規格名&br;:以下は制定年度|規格内容|サポートする&br;文字コード|h
|ASCII|JIS X 0201:1969|7ビット及び8ビットの情報交換用&br;符号化文字集合(漢字は含まない)|Shift-JIS&br;Unicode|
|JISコード|JIS X 0202:1975&br;(ISO/IEC 2022)|文字符号の構造及び拡張|~|
|~|JIS X 0208:1978&br;JIS X 0208:1983&br;JIS X 0208:1990&br;JIS X 0208:1997|非漢字、第一水準漢字、第二水準漢字&br;1983年に改正&br;1990年に改正 → JIS90&br;1997年に改正|~|
|~|JIS X 0212:1990|補助漢字※1の追加(JIS X 0208と組合せ利用)|Unicode|
|~|JIS X 0213:2000&br;JIS X 0213:2004|非漢字、第一 ~ 第四水準漢字&br;2004年に改正 → JIS2004|~|

**サロゲート ペア文字、結合文字 [#a6b7fa89]
追加されたJIS2004拡張文字のセット、
907文字のうち304文字がサロゲート ペア文字である。
-※1:文字コード(日本語漢字コード表)> JIS X 0212 (1990) to Unicode補助漢字コード表~
http://charset.7jp.net/jis0212.html

UTF-8、UTF-16で表現可能な
-サロゲート ペア文字は4バイト
-結合文字は4バイト以上

で表現される。

APIやDBMSの使い方によって、
-1文字として扱えるか
-2バイト毎にバラバラに扱うか

動作が変わる。

以下に一例を示す。

-.NET FrameworkのAPI
--System.Globalization.StringInfoは、1文字と認識する。
--System.Stringは、1文字と認識しない。

-SQL Serverの照合順序
--Japanese_90,Japanese_100は、1文字と認識する。
--Japaneseは、1文字と認識しない。

-Oracleの部分検索
--LIKECは、1文字と認識する。
--LIKEは、1文字と認識しない。

 ※サロゲート ペア文字のことを、サロゲートコード、補助文字とも呼ぶ。
 ※結合文字のことを、結合済み文字、合成文字、合成済み文字とも呼ぶ。
 ※Shift-JIS、EUC-JP、Big5などではサロゲート ペア文字、結合文字を表現できない

**参考 [#df54d477]
-StringInfo クラス (System.Globalization)~
http://msdn.microsoft.com/ja-jp/library/system.globalization.stringinfo.aspx
-SQL Server における JIS2004 対応について寄せられる質問と回答~
http://support.microsoft.com/kb/931785/ja
-LIKE、IN、BETWEEN AND、IS NULL - オラクル・Oracle PL/SQL 入門~
http://www.shift-the-oracle.com/plsql/like-in-between-isnull.html

*参考 [#sf1e78bc]
-第一・第二水準、第三・第四水準漢字
--JIS漢字コード:JIS第一・第二水準―文字コード入門―~
http://www.shuiren.org/chuden/teach/code/main4.htm
--JIS漢字コード:JIS補助漢字・第三・第四水準漢字―文字コード入門―~
http://www.shuiren.org/chuden/teach/code/main5.htm

-文字コード - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/character/index.html
--日本の文字コード - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/character/japan.html
---各文字コード規格に含まれる文字集合の関係概念図~
http://www.asahi-net.or.jp/~ax2s-kmtn/images/charas.png

--文字コード表
---ASCIIとANK - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/codes.html
---JIS基本漢字 - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/jisx0208.html
---JIS補助漢字(全コード表) - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/jisx0212/index.html
---JIS拡張漢字(全コード表) - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/jisx0213/index.html
---Windowsの機種依存文字 - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/mdc.html
---Unicode - CyberLibrarian~
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/index.html

----
Tags: [[:.NET開発]], [[:国際化対応]], [[:文字コード]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS